Merge branch 'master' of ssh://abwabwa.org:55555/home/git/ponytracker

Conflicts:
	sources/GUI/ponytrackertest.glade
This commit is contained in:
Mika 2014-05-21 23:46:16 +02:00
commit 3153d0a14a
2 changed files with 253 additions and 46 deletions

View File

@ -112,7 +112,7 @@ void lecture (int nombreChaines, int nombreInst, int tempo, Instrument* inst[],
//Lecture des motifs //Lecture des motifs
Motif* m; Motif* m;
printf("\n");
for (int courant = 0; courant < taille; courant++) { for (int courant = 0; courant < taille; courant++) {
for (int i = 0; i < melodie[courant] -> nbrTmp; i++) { for (int i = 0; i < melodie[courant] -> nbrTmp; i++) {

View File

@ -21,6 +21,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <gtk/gtk.h> #include <gtk/gtk.h>
#include <string.h>
#include "motifs/motifs.h" #include "motifs/motifs.h"
#include "melodie/melodie.h" #include "melodie/melodie.h"
@ -41,6 +42,27 @@ Motif* melodie[MAX_PATTERNS] = {NULL};
Motif* liste = NULL; Motif* liste = NULL;
Instrument* inst[NBR_INST] = {NULL}; Instrument* inst[NBR_INST] = {NULL};
Sample* smpl[NBR_SMPL] = {NULL}; Sample* smpl[NBR_SMPL] = {NULL};
int nbrPortees = 1;
int taille;
GtkBuilder *monBuilder;
char *Do="Do";
char *DoD="Do#";
char *Re="Re";
char *ReD="Re#";
char *Mi="Mi";
char *Fa="Fa";
char *FaD="Fa#";
char *Sol="Sol";
char *SolD="Sol#";
char *La="La";
char *LaD="La#";
char *Si="Si";
char *N1="1";
char *N2="2";
char *N3="3";
char *N4="4";
char *N5="5";
// Fonctions de débug // Fonctions de débug
@ -171,21 +193,144 @@ void debut(Motif* melodie[], Instrument* inst[], Sample* smpl[], Motif* liste, i
} }
int main( int argc, char *argv[] ){ int main( int argc, char *argv[] ){
debut(melodie, inst, smpl, liste, nbrPortees);
Motif* m = melodie[0];
GtkWidget *maFenetre;
char str[20];
gtk_init( &argc, &argv );
monBuilder = gtk_builder_new();
gtk_builder_add_from_file( monBuilder, "GUI/ponytrackertest.glade", NULL);
gtk_builder_connect_signals( monBuilder, NULL);
maFenetre = GTK_WIDGET( gtk_builder_get_object( monBuilder, "fenetreprincipale"));
GtkButton *button = (GtkButton*) gtk_builder_get_object(monBuilder, "button16");
switch (getNote(m,0,0)) {
case 0 :
strcpy(str,"Do ");
break;
case 1 :
strcpy(str,"Do# ");
break;
case 2 :
strcpy(str,"Re ");
break;
case 3 :
strcpy(str,"Re# ");
break;
case 4 :
strcpy(str,"Mi ");
break;
case 5 :
strcpy(str,"Fa ");
break;
case 6 :
strcpy(str,"Fa# ");
break;
case 7 :
strcpy(str,"Sol ");
break;
case 8 :
strcpy(str,"Sol# ");
break;
case 9 :
strcpy(str,"La ");
break;
case 10 :
strcpy(str,"La# ");
break;
case 11 :
strcpy(str,"Si ");
break;
default :
break;
}
//lecture(nbrPortee, melodie); printf("%d\n",getOctave(m,0,0));
switch (getOctave(m,0,0)) {
case 0 :
strcat(str, "0 ");
break;
case 1 :
strcat(str, "1 ");
break;
case 2 :
strcat(str, "2 ");
break;
case 3 :
strcat(str, "3 ");
break;
case 4 :
strcat(str, "4 ");
break;
default :
break;
}
// insérer code GTK ici switch (getInstrument(m,0,0)) {
GtkBuilder *monBuilder; case 0 :
GtkWidget *maFenetre; strcat(str, "0 ");
break;
case 1 :
strcat(str, "1 ");
break;
case 2 :
strcat(str, "2 ");
break;
case 3 :
strcat(str, "3 ");
break;
case 4 :
strcat(str, "4 ");
break;
default :
break;
}
gtk_init( &argc, &argv ); switch (getVolume(m,0,0)) {
case 0 :
strcat(str, "0 ");
break;
case 1 :
strcat(str, "1 ");
break;
case 2 :
strcat(str, "2 ");
break;
case 3 :
strcat(str, "3 ");
break;
case 4 :
strcat(str, "4 ");
break;
default :
break;
}
monBuilder = gtk_builder_new(); switch (getEffet(m,0,0)) {
case 0 :
strcat(str, "0 ");
break;
case 1 :
strcat(str, "1 ");
break;
case 2 :
strcat(str, "2 ");
break;
case 3 :
strcat(str, "3 ");
break;
case 4 :
strcat(str, "4 ");
break;
default :
break;
}
gtk_builder_add_from_file( monBuilder, "GUI/ponytracker.glade", NULL); gtk_button_set_label(button, str);
gtk_builder_connect_signals( monBuilder, NULL);
maFenetre = GTK_WIDGET( gtk_builder_get_object( monBuilder, "fenetreprincipale"));
gtk_widget_show_all (maFenetre); gtk_widget_show_all (maFenetre);
gtk_main(); gtk_main();
@ -194,61 +339,121 @@ int main( int argc, char *argv[] ){
void fenetreSample ( int argc, char *argv[] ) void fenetreSample ( int argc, char *argv[] )
{ {
GtkBuilder *monBuilderSample;
GtkWidget *maFenetreSample;
gtk_init( &argc, &argv ); GtkWidget *maFenetreSample = GTK_WIDGET( gtk_builder_get_object( monBuilder, "ajoutsample"));
monBuilderSample = gtk_builder_new();
gtk_builder_add_from_file( monBuilderSample, "GUI/ponytracker.glade", NULL);
gtk_builder_connect_signals( monBuilderSample, NULL);
maFenetreSample = GTK_WIDGET( gtk_builder_get_object( monBuilderSample, "ajoutsample"));
gtk_widget_show_all (maFenetreSample); gtk_widget_show_all (maFenetreSample);
} }
void fenetreInstrument ( int argc, char *argv[] ) void fenetreInstrument ( int argc, char *argv[] )
{ {
GtkBuilder *monBuilderInstrument; GtkWidget *maFenetreInstrument = GTK_WIDGET( gtk_builder_get_object( monBuilder, "ajoutinstrument"));
GtkWidget *maFenetreInstrument;
gtk_init( &argc, &argv );
monBuilderInstrument = gtk_builder_new();
gtk_builder_add_from_file( monBuilderInstrument, "GUI/ponytracker.glade", NULL);
gtk_builder_connect_signals( monBuilderInstrument, NULL);
maFenetreInstrument = GTK_WIDGET( gtk_builder_get_object( monBuilderInstrument, "ajoutinstrument"));
gtk_widget_show_all (maFenetreInstrument); gtk_widget_show_all (maFenetreInstrument);
} }
void fenetreMotif ( int argc, char *argv[] ) void fenetreMotif ( int argc, char *argv[] )
{ {
GtkBuilder *monBuilderMotif; GtkWidget *maFenetreMotif = GTK_WIDGET( gtk_builder_get_object( monBuilder, "ajoutmotif"));
GtkWidget *maFenetreMotif;
gtk_init( &argc, &argv );
monBuilderMotif = gtk_builder_new();
gtk_builder_add_from_file( monBuilderMotif, "GUI/ponytracker.glade", NULL);
gtk_builder_connect_signals( monBuilderMotif, NULL);
maFenetreMotif = GTK_WIDGET( gtk_builder_get_object( monBuilderMotif, "ajoutmotif"));
gtk_widget_show_all (maFenetreMotif); gtk_widget_show_all (maFenetreMotif);
} }
void fenetreNote ( int argc, char *argv[] )
{
GtkWidget *maFenetreNote = GTK_WIDGET( gtk_builder_get_object( monBuilder, "ajoutnote"));
gtk_widget_show_all (maFenetreNote);
}
void remplissageNote (GtkWidget *widget, gpointer *data){
Motif* m = melodie[0];
GtkEntry *entryNote = (GtkEntry*) gtk_builder_get_object(monBuilder,"combonote");
GtkEntry *entryOctave = (GtkEntry*) gtk_builder_get_object(monBuilder,"combooctave");
GtkEntry *entryInstrument = (GtkEntry*) gtk_builder_get_object(monBuilder,"comboinstrument");
GtkEntry *entryVolume = (GtkEntry*) gtk_builder_get_object(monBuilder,"combovolume");
GtkEntry *entryEffet = (GtkEntry*) gtk_builder_get_object(monBuilder,"comboeffet");
const char *strnote = gtk_entry_get_text(GTK_ENTRY(entryNote));
const char *stroctave = gtk_entry_get_text(GTK_ENTRY(entryOctave));
const char *strinstrument = gtk_entry_get_text(GTK_ENTRY(entryInstrument));
const char *strvolume = gtk_entry_get_text(GTK_ENTRY(entryVolume));
const char *streffet = gtk_entry_get_text(GTK_ENTRY(entryEffet));
if (strcmp(Do,strnote)==0) definirNote(m,0,0,1);
else
if (strcmp(DoD,strnote)==0) definirNote(m,0,0,2);
else
if (strcmp(Re,strnote)==0) definirNote(m,0,0,3);
else
if (strcmp(ReD,strnote)==0) definirNote(m,0,0,4);
else
if (strcmp(Mi,strnote)==0) definirNote(m,0,0,5);
else
if (strcmp(Fa,strnote)==0) definirNote(m,0,0,6);
else
if (strcmp(FaD,strnote)==0) definirNote(m,0,0,7);
else
if (strcmp(Sol,strnote)==0) definirNote(m,0,0,8);
else
if (strcmp(SolD,strnote)==0) definirNote(m,0,0,9);
else
if (strcmp(La,strnote)==0) definirNote(m,0,0,10);
else
if (strcmp(LaD,strnote)==0) definirNote(m,0,0,11);
else
if (strcmp(Si,strnote)==0) definirNote(m,0,0,12);
if (strcmp(N1,stroctave)==0) definirOctave(m,0,0,1);
else
if (strcmp(N2,stroctave)==0) definirOctave(m,0,0,2);
else
if (strcmp(N3,stroctave)==0) definirOctave(m,0,0,3);
else
if (strcmp(N4,stroctave)==0) definirOctave(m,0,0,4);
else
if (strcmp(N5,stroctave)==0) definirOctave(m,0,0,5);
if (strcmp(N1,strinstrument)==0) definirInstrument(m,0,0,1);
else
if (strcmp(N2,strinstrument)==0) definirInstrument(m,0,0,2);
else
if (strcmp(N3,strinstrument)==0) definirInstrument(m,0,0,3);
else
if (strcmp(N4,strinstrument)==0) definirInstrument(m,0,0,4);
else
if (strcmp(N5,strinstrument)==0) definirInstrument(m,0,0,5);
if (strcmp(N1,strvolume)==0) definirVolume(m,0,0,1);
else
if (strcmp(N2,strvolume)==0) definirVolume(m,0,0,2);
else
if (strcmp(N3,strvolume)==0) definirVolume(m,0,0,3);
else
if (strcmp(N4,strvolume)==0) definirVolume(m,0,0,4);
else
if (strcmp(N5,strvolume)==0) definirVolume(m,0,0,5);
if (strcmp(N1,streffet)==0) definirEffet(m,0,0,1);
else
if (strcmp(N2,streffet)==0) definirEffet(m,0,0,2);
else
if (strcmp(N3,streffet)==0) definirEffet(m,0,0,3);
else
if (strcmp(N4,streffet)==0) definirEffet(m,0,0,4);
else
if (strcmp(N5,streffet)==0) definirEffet(m,0,0,5);
}
void lancerLecture () void lancerLecture ()
{ {
int nbrPortees = 1;
//courant = 0; //courant = 0;
taille = 0; //taille = 0;
debut(melodie, inst, smpl, liste, nbrPortees); printf("%d\n",nbrPortees);
//debut(melodie, inst, smpl, liste, nbrPortees);
lecture(nbrPortees,1,480,inst,melodie); lecture(nbrPortees,1,480,inst,melodie);
} }
@ -256,3 +461,5 @@ void quitter ()
{ {
gtk_main_quit(); gtk_main_quit();
} }
void refresh(){}