Mieux, beaucoup mieux.
This commit is contained in:
parent
d29a9d075d
commit
027f3c97fd
File diff suppressed because it is too large
Load Diff
|
@ -112,7 +112,7 @@ void lecture (int nombreChaines, int nombreInst, int tempo, Instrument* inst[],
|
|||
//Lecture des motifs
|
||||
|
||||
Motif* m;
|
||||
|
||||
printf("\n");
|
||||
for (int courant = 0; courant < taille; courant++) {
|
||||
for (int i = 0; i < melodie[courant] -> nbrTmp; i++) {
|
||||
|
||||
|
|
297
sources/main.c
297
sources/main.c
|
@ -21,6 +21,7 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <gtk/gtk.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "motifs/motifs.h"
|
||||
#include "melodie/melodie.h"
|
||||
|
@ -41,6 +42,27 @@ Motif* melodie[MAX_PATTERNS] = {NULL};
|
|||
Motif* liste = NULL;
|
||||
Instrument* inst[NBR_INST] = {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
|
||||
|
@ -171,21 +193,144 @@ void debut(Motif* melodie[], Instrument* inst[], Sample* smpl[], Motif* liste, i
|
|||
}
|
||||
|
||||
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
|
||||
GtkBuilder *monBuilder;
|
||||
GtkWidget *maFenetre;
|
||||
switch (getInstrument(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_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_builder_connect_signals( monBuilder, NULL);
|
||||
|
||||
maFenetre = GTK_WIDGET( gtk_builder_get_object( monBuilder, "fenetreprincipale"));
|
||||
gtk_button_set_label(button, str);
|
||||
|
||||
gtk_widget_show_all (maFenetre);
|
||||
gtk_main();
|
||||
|
@ -194,61 +339,121 @@ int main( int argc, char *argv[] ){
|
|||
|
||||
void fenetreSample ( int argc, char *argv[] )
|
||||
{
|
||||
GtkBuilder *monBuilderSample;
|
||||
GtkWidget *maFenetreSample;
|
||||
|
||||
gtk_init( &argc, &argv );
|
||||
|
||||
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"));
|
||||
GtkWidget *maFenetreSample = GTK_WIDGET( gtk_builder_get_object( monBuilder, "ajoutsample"));
|
||||
|
||||
gtk_widget_show_all (maFenetreSample);
|
||||
}
|
||||
|
||||
void fenetreInstrument ( int argc, char *argv[] )
|
||||
{
|
||||
GtkBuilder *monBuilderInstrument;
|
||||
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"));
|
||||
GtkWidget *maFenetreInstrument = GTK_WIDGET( gtk_builder_get_object( monBuilder, "ajoutinstrument"));
|
||||
|
||||
gtk_widget_show_all (maFenetreInstrument);
|
||||
}
|
||||
|
||||
void fenetreMotif ( int argc, char *argv[] )
|
||||
{
|
||||
GtkBuilder *monBuilderMotif;
|
||||
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"));
|
||||
GtkWidget *maFenetreMotif = GTK_WIDGET( gtk_builder_get_object( monBuilder, "ajoutmotif"));
|
||||
|
||||
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 ()
|
||||
{
|
||||
int nbrPortees = 1;
|
||||
|
||||
//courant = 0;
|
||||
taille = 0;
|
||||
debut(melodie, inst, smpl, liste, nbrPortees);
|
||||
//taille = 0;
|
||||
printf("%d\n",nbrPortees);
|
||||
//debut(melodie, inst, smpl, liste, nbrPortees);
|
||||
lecture(nbrPortees,1,480,inst,melodie);
|
||||
}
|
||||
|
||||
|
@ -256,3 +461,5 @@ void quitter ()
|
|||
{
|
||||
gtk_main_quit();
|
||||
}
|
||||
|
||||
void refresh(){}
|
||||
|
|
Loading…
Reference in New Issue