[xiph-cvs] r6517 - trunk/postfish
xiphmont at xiph.org
xiphmont at xiph.org
Wed Apr 14 23:17:15 PDT 2004
Author: xiphmont
Date: 2004-04-15 02:17:15 -0400 (Thu, 15 Apr 2004)
New Revision: 6517
Modified:
trunk/postfish/mainpanel.c
trunk/postfish/mainpanel.h
trunk/postfish/version.h
Log:
Improve the key binding code, add rotating key bindings to channel
effect activation buttons.
<p><p>Modified: trunk/postfish/mainpanel.c
===================================================================
--- trunk/postfish/mainpanel.c 2004-04-15 03:08:42 UTC (rev 6516)
+++ trunk/postfish/mainpanel.c 2004-04-15 06:17:15 UTC (rev 6517)
@@ -208,11 +208,21 @@
}
static void action_seta(GtkWidget *widget,postfish_mainpanel *p){
- const char *time=gtk_entry_get_text(GTK_ENTRY(p->entry_a));
-
- time=readout_get(READOUT(p->cue));
+ const char *time=readout_get(READOUT(p->cue));
gtk_entry_set_text(GTK_ENTRY(p->entry_a),time);
+ {
+ const char *time=gtk_entry_get_text(GTK_ENTRY(p->entry_a));
+ off_t cursora=input_time_to_cursor(time),cursorb;
+ time=gtk_entry_get_text(GTK_ENTRY(p->entry_b));
+ cursorb=input_time_to_cursor(time);
+
+ if(cursora>=cursorb && loop_active){
+ loop_active=0;
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(p->cue_b),0);
+ }
+ }
+
}
static void action_setb(GtkWidget *widget,postfish_mainpanel *p){
@@ -225,6 +235,17 @@
cursorb=input_time_to_cursor(time);
gtk_entry_set_text(GTK_ENTRY(p->entry_b),time);
+ {
+ const char *time=gtk_entry_get_text(GTK_ENTRY(p->entry_a));
+ off_t cursora=input_time_to_cursor(time),cursorb;
+ time=gtk_entry_get_text(GTK_ENTRY(p->entry_b));
+ cursorb=input_time_to_cursor(time);
+
+ if(cursora>=cursorb && loop_active){
+ loop_active=0;
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(p->cue_b),0);
+ }
+ }
}
static void action_reseta(GtkWidget *widget,postfish_mainpanel *p){
@@ -236,9 +257,9 @@
static void action_resetb(GtkWidget *widget,postfish_mainpanel *p){
char time[14];
- input_cursor_to_time(0,time);
+ input_cursor_to_time(0.,time);
gtk_entry_set_text(GTK_ENTRY(p->entry_b),time);
- gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(p->cue_act[1]),0);
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(p->cue_b),0);
}
static void shutdown(void){
@@ -266,6 +287,42 @@
return FALSE;
}
+static gboolean channel_keybinding(GtkWidget *widget,
+ GdkEventKey *event,
+ gpointer in){
+ postfish_mainpanel *p=in;
+ int keych=event->keyval-GDK_0;
+ int actualch,widgetnum;
+
+ if(keych==0)
+ keych=9;
+ else
+ keych--;
+
+ if(keych<0 || keych>9)return FALSE;
+ actualch=keych;
+
+ widgetnum=p->channelrotate[keych];
+
+ while(widgetnum>=p->channeleffects){
+ widgetnum-=p->channeleffects;
+ actualch+=10;
+ }
+
+ gtk_widget_grab_focus(p->channel_wa[widgetnum][actualch]);
+
+ widgetnum=++p->channelrotate[keych];
+
+ actualch=keych;
+ while(widgetnum>=p->channeleffects){
+ widgetnum-=p->channeleffects;
+ actualch+=10;
+ }
+ if(actualch>=input_ch)p->channelrotate[keych]=0;
+
+ return TRUE;
+}
+
static gboolean timeevent_keybinding(GtkWidget *widget,
GdkEventKey *event,
gpointer in){
@@ -346,6 +403,7 @@
gpointer in){
postfish_mainpanel *p=in;
+
#if 0
fprintf(stderr,"keypress: M%d C%d S%d L%d '%x'\n",
event->state&GDK_MOD1_MASK,
@@ -355,127 +413,51 @@
event->keyval);
#endif
- /* do not capture Alt accellerators */
if(event->state&GDK_MOD1_MASK) return FALSE;
+ if(event->state&GDK_CONTROL_MASK)return FALSE;
- if(event->state&GDK_CONTROL_MASK){
-
- switch(event->keyval){
- case GDK_a:
- case GDK_A:
- gtk_widget_activate(p->cue_reset[0]);
- break;
- case GDK_b:
- case GDK_B:
- gtk_widget_activate(p->cue_reset[1]);
- break;
-
- default:
- return FALSE;
- }
-
-
- }else{
- /* non-control keypresses */
- switch(event->keyval){
- case GDK_less:
- case GDK_comma:
- case GDK_period:
- case GDK_greater:
-
- /* GTK has one unfortunate bit of hardwiring; if a key is held down
- and autorepeats, the default pushbutton widget-unactivate timeout
- is 250 ms, far slower than autorepeat. We must defeat this to
- have autorepeat accellerators function at full speed. */
-
- {
- GdkEventKey copy=*event;
- copy.type=GDK_KEY_RELEASE;
- gtk_main_do_event((GdkEvent *)(©));
- }
- while (gtk_events_pending ()) gtk_main_iteration ();
- }
+ /* non-control keypresses */
+ switch(event->keyval){
+ case GDK_less:
+ case GDK_comma:
+ case GDK_period:
+ case GDK_greater:
+ /* GTK has one unfortunate bit of hardwiring; if a key is held down
+ and autorepeats, the default pushbutton widget-unactivate timeout
+ is 250 ms, far slower than autorepeat. We must defeat this to
+ have autorepeat accellerators function at full speed. */
- switch(event->keyval){
- case GDK_t:
- /* trigger master dB */
- gtk_widget_activate(p->masterdB_a);
- break;
- case GDK_minus:
- multibar_thumb_set(MULTIBAR(p->masterdB_s),
- multibar_get_value(MULTIBAR(p->masterdB_s),0)-.1,0);
- break;
- case GDK_underscore:
- multibar_thumb_set(MULTIBAR(p->masterdB_s),
- multibar_get_value(MULTIBAR(p->masterdB_s),0)-1.,0);
- break;
- case GDK_equal:
- multibar_thumb_set(MULTIBAR(p->masterdB_s),
+ {
+ GdkEventKey copy=*event;
+ copy.type=GDK_KEY_RELEASE;
+ gtk_main_do_event((GdkEvent *)(©));
+ }
+ while (gtk_events_pending ()) gtk_main_iteration ();
+ }
+
+
+ switch(event->keyval){
+ case GDK_minus:
+ multibar_thumb_set(MULTIBAR(p->masterdB_s),
+ multibar_get_value(MULTIBAR(p->masterdB_s),0)-.1,0);
+ break;
+ case GDK_underscore:
+ multibar_thumb_set(MULTIBAR(p->masterdB_s),
+ multibar_get_value(MULTIBAR(p->masterdB_s),0)-1.,0);
+ break;
+ case GDK_equal:
+ multibar_thumb_set(MULTIBAR(p->masterdB_s),
multibar_get_value(MULTIBAR(p->masterdB_s),0)+.1,0);
break;
- case GDK_plus:
- multibar_thumb_set(MULTIBAR(p->masterdB_s),
- multibar_get_value(MULTIBAR(p->masterdB_s),0)+1.,0);
- break;
- case GDK_c:
- gtk_widget_activate(p->buttonactive[0]);
- break;
- case GDK_m:
- gtk_widget_activate(p->buttonactive[1]);
- break;
- case GDK_o:
- gtk_widget_activate(p->buttonactive[2]);
- break;
- case GDK_v:
- gtk_widget_activate(p->buttonactive[3]);
- break;
- case GDK_r:
- gtk_widget_activate(p->buttonactive[4]);
- break;
- case GDK_e:
- gtk_widget_activate(p->buttonactive[5]);
- break;
- case GDK_l:
- gtk_widget_activate(p->buttonactive[6]);
- break;
- case GDK_a:
- gtk_widget_activate(p->cue_act[0]);
- break;
- case GDK_A:
- gtk_widget_activate(p->cue_set[0]);
- break;
- case GDK_b:
- gtk_widget_activate(p->cue_act[1]);
- break;
- case GDK_B:
- gtk_widget_activate(p->cue_set[1]);
- break;
- case GDK_BackSpace:
- gtk_widget_activate(p->deckactive[0]);
- break;
- case GDK_less:
- gtk_widget_activate(p->deckactive[1]);
- break;
- case GDK_comma:
- gtk_widget_activate(p->deckactive[2]);
- break;
- case GDK_space:
- gtk_widget_activate(p->deckactive[3]);
- break;
- case GDK_period:
- gtk_widget_activate(p->deckactive[4]);
- break;
- case GDK_greater:
- gtk_widget_activate(p->deckactive[5]);
- break;
- case GDK_End:
- gtk_widget_activate(p->deckactive[6]);
- break;
- default:
- return FALSE;
- }
+ case GDK_plus:
+ multibar_thumb_set(MULTIBAR(p->masterdB_s),
+ multibar_get_value(MULTIBAR(p->masterdB_s),0)+1.,0);
+ break;
+ default:
+ return FALSE;
}
+
return TRUE;
}
@@ -495,8 +477,8 @@
for(j=0;j<input_ch;j++){
char buffer[80];
- sprintf(buffer," %d ",j);
- wa[j]=gtk_toggle_button_new_with_label(buffer);
+ sprintf(buffer," %d ",j+1);
+ p->channel_wa[i][j]=wa[j]=gtk_toggle_button_new_with_label(buffer);
if(channelwinp){
/* a panel button per channel, multiple accellerated labels */
@@ -551,13 +533,14 @@
}
static void mainpanel_masterentry(postfish_mainpanel *p,
- GtkWidget *table,
- char *label,
- char *shortcut,
- int i,
- void (*panel_create)
- (postfish_mainpanel *,
- GtkWidget *, GtkWidget *)){
+ GtkWidget *table,
+ char *label,
+ char *shortcut,
+ guint key,
+ int i,
+ void (*panel_create)
+ (postfish_mainpanel *,
+ GtkWidget *, GtkWidget *)){
GtkWidget *ww=windowbutton_new(label);
GtkWidget *wa=gtk_toggle_button_new_with_label(shortcut);
@@ -565,11 +548,16 @@
gtk_table_attach_defaults(GTK_TABLE(table),ww,0,1,i+1,i+2);
gtk_table_attach_defaults(GTK_TABLE(table),wa,1,2,i+1,i+2);
- p->buttonactive[i]=wa;
+ gtk_widget_add_accelerator (wa, "activate", p->group, key, 0, 0);
+
if(panel_create)(*panel_create)(p,ww,wa);
}
+#define CHANNEL_EFFECTS 7
+#define MASTER_EFFECTS 7
void mainpanel_create(postfish_mainpanel *panel,char **chlabels){
+ char *text_bar[7]={"[bksp]","[<]","[,]","[space]","[.]","[>]","[end]"};
+
int i;
GdkPixmap *xpm_bar[7];
GdkBitmap *xbm_bar[7];
@@ -592,26 +580,30 @@
GtkWidget *channelbox=gtk_vbox_new(0,0);
GtkWidget *masterbox=gtk_vbox_new(0,6);
- GtkWidget *channeltable=gtk_table_new(8,input_ch*2+2,0);
- GtkWidget *mastertable=gtk_table_new(8,2,0);
+ GtkWidget *channeltable=gtk_table_new(CHANNEL_EFFECTS+1,input_ch*2+2,0);
+ GtkWidget *mastertable=gtk_table_new(MASTER_EFFECTS+1,2,0);
-
- char *text_bar[7]={"[bksp]","[<]","[,]","[space]","[.]","[>]","[end]"};
GdkWindow *root=gdk_get_default_root_window();
panel->toplevel=gtk_window_new (GTK_WINDOW_TOPLEVEL);
+ panel->group = gtk_accel_group_new ();
+ gtk_window_add_accel_group (GTK_WINDOW(panel->toplevel), panel->group);
-
+ panel->channel_wa=malloc(CHANNEL_EFFECTS*sizeof(*panel->channel_wa));
+ for(i=0;i<CHANNEL_EFFECTS;i++)
+ panel->channel_wa[i]=malloc(input_ch*sizeof(**panel->channel_wa));
+ panel->channeleffects=CHANNEL_EFFECTS;
+
char versionmarkup[240];
- char *version=strstr(VERSION,"version.h,v");
+ char *version=strstr(VERSION,"version.h");
if(version){
char *versionend=strchr(version,' ');
if(versionend)versionend=strchr(versionend+1,' ');
if(versionend)versionend=strchr(versionend+1,' ');
if(versionend)versionend=strchr(versionend+1,' ');
if(versionend){
- int len=versionend-version-11;
- version=strdup(version+12);
+ int len=versionend-version-9;
+ version=strdup(version+10);
version[len-1]=0;
}
}else{
@@ -620,7 +612,7 @@
snprintf(versionmarkup,240," <span size=\"large\" weight=\"bold\" "
"style=\"italic\" foreground=\"dark blue\">"
"Postfish</span> <span size=\"small\" foreground=\"#606060\">"
- "version %s</span> ",
+ "revision %s</span> ",
version);
@@ -644,6 +636,9 @@
g_signal_connect (G_OBJECT (panel->toplevel), "key-press-event",
G_CALLBACK (mainpanel_keybinding), panel);
+
+ g_signal_connect_after (G_OBJECT (panel->toplevel), "key-press-event",
+ G_CALLBACK (channel_keybinding), panel);
for(i=0;i<19;i++)
@@ -666,8 +661,6 @@
xbm_bar+6,NULL,bar_end_xpm);
-
-
panel->pf[0]=xpm_bar[3];
panel->pb[0]=xbm_bar[3];
panel->pf[1]=gdk_pixmap_create_from_xpm_d(root,
@@ -790,7 +783,8 @@
multibar_callback(MULTIBAR(panel->masterdB_s),
masterdB_change,(gpointer)panel);
-
+
+ gtk_widget_add_accelerator (panel->masterdB_a, "activate", panel->group, GDK_t, 0, 0);
g_signal_connect_after (G_OBJECT(panel->masterdB_a), "clicked",
G_CALLBACK(masterdB_change), (gpointer)panel);
}
@@ -844,7 +838,15 @@
g_signal_connect (G_OBJECT (panel->deckactive[6]), "clicked",
G_CALLBACK (action_end), panel);
+ gtk_widget_add_accelerator (panel->deckactive[0], "activate", panel->group, GDK_BackSpace, 0, 0);
+ gtk_widget_add_accelerator (panel->deckactive[1], "activate", panel->group, GDK_less, 0, 0);
+ gtk_widget_add_accelerator (panel->deckactive[2], "activate", panel->group, GDK_comma, 0, 0);
+ gtk_widget_add_accelerator (panel->deckactive[3], "activate", panel->group, GDK_space, 0, 0);
+ gtk_widget_add_accelerator (panel->deckactive[4], "activate", panel->group, GDK_period, 0, 0);
+ gtk_widget_add_accelerator (panel->deckactive[5], "activate", panel->group, GDK_greater, 0, 0);
+ gtk_widget_add_accelerator (panel->deckactive[6], "activate", panel->group, GDK_End, 0, 0);
+
}
/* cue bar */
@@ -856,21 +858,57 @@
GtkWidget *frameb=gtk_vseparator_new();
GtkWidget *panelb=windowbutton_new("c_ue list");
+ GtkWidget *temp;
panel->entry_a=gtk_entry_new();
panel->entry_b=gtk_entry_new();
panel->cue=readout_new(" : :00.00");
+ temp=gtk_button_new_with_label(" a ");
+ gtk_widget_add_accelerator (temp, "activate", panel->group, GDK_a, 0, 0);
+ g_signal_connect (G_OBJECT (temp), "clicked",
+ G_CALLBACK (action_entrya), panel);
+ gtk_box_pack_start(GTK_BOX(cuebox),panel->cue,0,0,0);
+ gtk_box_pack_start(GTK_BOX(cuebox),framea,1,1,3);
+ gtk_box_pack_start(GTK_BOX(cuebox),temp,0,0,0);
+ gtk_box_pack_start(GTK_BOX(cuebox),panel->entry_a,0,0,0);
- panel->cue_act[0]=gtk_button_new_with_label(" a ");
- panel->cue_act[1]=gtk_toggle_button_new_with_label(" b ");
- panel->cue_set[0]=gtk_button_new_with_label(" A ");
- panel->cue_set[1]=gtk_button_new_with_label(" B ");
- panel->cue_reset[0]=gtk_button_new_with_label("^A");
- panel->cue_reset[1]=gtk_button_new_with_label("^B");
+ temp=gtk_button_new_with_label(" A ");
+ gtk_widget_add_accelerator (temp, "activate", panel->group, GDK_A, GDK_SHIFT_MASK, 0);
+ g_signal_connect (G_OBJECT (temp), "clicked",
+ G_CALLBACK (action_seta), panel);
+ gtk_box_pack_start(GTK_BOX(cuebox),temp,0,0,0);
+
+ temp=gtk_button_new_with_label("^A");
+ gtk_widget_add_accelerator (temp, "activate", panel->group, GDK_a, GDK_CONTROL_MASK, 0);
+ g_signal_connect (G_OBJECT (temp), "clicked",
+ G_CALLBACK (action_reseta), panel);
+ gtk_widget_set_name(temp,"reseta");
+ gtk_box_pack_start(GTK_BOX(cuebox),temp,0,0,0);
+ panel->cue_b=temp=gtk_toggle_button_new_with_label(" b ");
+ gtk_widget_add_accelerator (temp, "activate", panel->group, GDK_b, 0, 0);
+ g_signal_connect (G_OBJECT (temp), "clicked",
+ G_CALLBACK (action_entryb), panel);
+ gtk_box_pack_start(GTK_BOX(cuebox),frameb,1,1,3);
+ gtk_box_pack_start(GTK_BOX(cuebox),temp,0,0,0);
+ temp=gtk_button_new_with_label(" B ");
+ gtk_widget_add_accelerator (temp, "activate", panel->group, GDK_B, GDK_SHIFT_MASK, 0);
+ g_signal_connect (G_OBJECT (temp), "clicked",
+ G_CALLBACK (action_setb), panel);
+ gtk_box_pack_start(GTK_BOX(cuebox),panel->entry_b,0,0,0);
+ gtk_box_pack_start(GTK_BOX(cuebox),temp,0,0,0);
+
+ temp=gtk_button_new_with_label("^B");
+ gtk_widget_add_accelerator (temp, "activate", panel->group, GDK_b, GDK_CONTROL_MASK, 0);
+ g_signal_connect (G_OBJECT (temp), "clicked",
+ G_CALLBACK (action_resetb), panel);
+ gtk_widget_set_name(temp,"resetb");
+ gtk_box_pack_start(GTK_BOX(cuebox),temp,0,0,0);
+
+
gtk_entry_set_width_chars(GTK_ENTRY(panel->entry_a),13);
gtk_entry_set_width_chars(GTK_ENTRY(panel->entry_b),13);
gtk_entry_set_text(GTK_ENTRY(panel->entry_a)," : :00.00");
@@ -881,52 +919,18 @@
G_CALLBACK (timeevent_keybinding), panel->toplevel);
g_signal_connect (G_OBJECT (panel->entry_b), "key-press-event",
G_CALLBACK (timeevent_keybinding), panel->toplevel);
+
g_signal_connect_after(G_OBJECT (panel->entry_a), "grab_focus",
G_CALLBACK (timeevent_unselect), NULL);
g_signal_connect_after(G_OBJECT (panel->entry_b), "grab_focus",
G_CALLBACK (timeevent_unselect), NULL);
- g_signal_connect (G_OBJECT (panel->cue_act[0]), "clicked",
- G_CALLBACK (action_entrya), panel);
- g_signal_connect (G_OBJECT (panel->cue_act[1]), "clicked",
- G_CALLBACK (action_entryb), panel);
-
- g_signal_connect (G_OBJECT (panel->cue_set[0]), "clicked",
- G_CALLBACK (action_seta), panel);
- g_signal_connect (G_OBJECT (panel->cue_set[1]), "clicked",
- G_CALLBACK (action_setb), panel);
-
- g_signal_connect (G_OBJECT (panel->cue_reset[0]), "clicked",
- G_CALLBACK (action_reseta), panel);
- g_signal_connect (G_OBJECT (panel->cue_reset[1]), "clicked",
- G_CALLBACK (action_resetb), panel);
-
-
- gtk_widget_set_name(panel->cue_reset[0],"reseta");
- gtk_widget_set_name(panel->cue_reset[1],"resetb");
-
gtk_misc_set_alignment(GTK_MISC(cuelabel),1,.5);
gtk_table_attach_defaults(GTK_TABLE(ttable),cuelabel,0,1,5,6);
gtk_table_attach_defaults(GTK_TABLE(ttable),cuebox,1,2,5,6);
gtk_table_attach_defaults(GTK_TABLE(ttable),panelb,2,3,5,6);
- gtk_box_pack_start(GTK_BOX(cuebox),panel->cue,0,0,0);
-
- gtk_box_pack_start(GTK_BOX(cuebox),framea,1,1,3);
-
- gtk_box_pack_start(GTK_BOX(cuebox),panel->cue_act[0],0,0,0);
- gtk_box_pack_start(GTK_BOX(cuebox),panel->entry_a,0,0,0);
- gtk_box_pack_start(GTK_BOX(cuebox),panel->cue_set[0],0,0,0);
- gtk_box_pack_start(GTK_BOX(cuebox),panel->cue_reset[0],0,0,0);
-
- gtk_box_pack_start(GTK_BOX(cuebox),frameb,1,1,3);
-
- gtk_box_pack_start(GTK_BOX(cuebox),panel->cue_act[1],0,0,0);
- gtk_box_pack_start(GTK_BOX(cuebox),panel->entry_b,0,0,0);
- gtk_box_pack_start(GTK_BOX(cuebox),panel->cue_set[1],0,0,0);
- gtk_box_pack_start(GTK_BOX(cuebox),panel->cue_reset[1],0,0,0);
-
}
/* config bar */
@@ -1001,13 +1005,13 @@
gtk_table_attach_defaults(GTK_TABLE(mastertable),temp,1,2,0,1);
}
- mainpanel_masterentry(panel,mastertable,"_Crossmix "," c ",0,0);
- mainpanel_masterentry(panel,mastertable,"_Multicomp "," m ",1,compandpanel_create);
- mainpanel_masterentry(panel,mastertable,"_Onecomp "," o ",2,singlepanel_create);
- mainpanel_masterentry(panel,mastertable,"De_verb "," v ",3,suppresspanel_create);
- mainpanel_masterentry(panel,mastertable,"_Reverb "," r ",4,0);
- mainpanel_masterentry(panel,mastertable,"_EQ "," e ",5,eqpanel_create);
- mainpanel_masterentry(panel,mastertable,"_Limit "," l ",6,limitpanel_create);
+ mainpanel_masterentry(panel,mastertable,"_Crossmix "," c ",GDK_c,0,0);
+ mainpanel_masterentry(panel,mastertable,"_Multicomp "," m ",GDK_m,1,compandpanel_create);
+ mainpanel_masterentry(panel,mastertable,"_Onecomp "," o ",GDK_o,2,singlepanel_create);
+ mainpanel_masterentry(panel,mastertable,"De_verb "," v ",GDK_v,3,suppresspanel_create);
+ mainpanel_masterentry(panel,mastertable,"_Reverb "," r ",GDK_r,4,0);
+ mainpanel_masterentry(panel,mastertable,"_EQ "," e ",GDK_e,5,eqpanel_create);
+ mainpanel_masterentry(panel,mastertable,"_Limit "," l ",GDK_l,6,limitpanel_create);
g_signal_connect (G_OBJECT (panel->toplevel), "delete_event",
G_CALLBACK (shutdown), NULL);
@@ -1148,6 +1152,14 @@
case 6:
case 7:
case 8:
+ case 9:
+ case 10:
+ case 11:
+ case 12:
+ case 13:
+ case 14:
+ case 15:
+ case 16:
for(i=0;i<ch;i++){
sprintf(buffer,"_%d",i);
labels[i]=strdup(buffer);
@@ -1158,7 +1170,7 @@
labels[i++]=strdup(buffer);
break;
default:
- fprintf(stderr,"\nPostfish currently supports inputs of one to eight\n"
+ fprintf(stderr,"\nPostfish currently supports inputs of one to sixteen\n"
"channels (current input request: %d channels)\n\n",ch);
exit(1);
}
Modified: trunk/postfish/mainpanel.h
===================================================================
--- trunk/postfish/mainpanel.h 2004-04-15 03:08:42 UTC (rev 6516)
+++ trunk/postfish/mainpanel.h 2004-04-15 06:17:15 UTC (rev 6517)
@@ -42,6 +42,7 @@
GdkBitmap *pb[2];
/* we need these widgets */
+ GtkAccelGroup *group;
GtkWidget *toplevel;
GtkWidget *masterdB_r;
@@ -49,13 +50,10 @@
GtkWidget *masterdB_a;
GtkWidget *buttonactive[7];
+ GtkWidget *deckactive[7];
- GtkWidget *cue_act[2];
- GtkWidget *cue_set[2];
- GtkWidget *cue_reset[2];
+ GtkWidget *cue_b;
- GtkWidget *deckactive[7];
-
GtkWidget *inbar;
GtkWidget *outbar;
GtkWidget *inreadout;
@@ -64,7 +62,10 @@
float inpeak;
float outpeak;
- GtkWidget *channelshow[10]; /* support only up to 8 + mid/side */
+ GtkWidget *channelshow[18]; /* support only up to 16 + mid/side */
+ int channelrotate[10]; /* up to 16 channels, but only base 10 digits on the keyboard */
+ GtkWidget ***channel_wa;
+ int channeleffects;
GtkWidget *cue;
GtkWidget *entry_a;
@@ -75,7 +76,8 @@
int fishframe;
int fishframe_init;
guint fishframe_timer;
-
+ int *ch_rotate;
+
};
extern gboolean slider_keymodify(GtkWidget *w,GdkEventKey *event,gpointer in);
Modified: trunk/postfish/version.h
===================================================================
--- trunk/postfish/version.h 2004-04-15 03:08:42 UTC (rev 6516)
+++ trunk/postfish/version.h 2004-04-15 06:17:15 UTC (rev 6517)
@@ -1,2 +1,2 @@
#define VERSION "$Id$ "
-/* DO NOT EDIT: Automated versioning hack [Wed Apr 14 20:58:42 EDT 2004] */
+/* DO NOT EDIT: Automated versioning hack [Thu Apr 15 02:15:37 EDT 2004] */
--- >8 ----
List archives: http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'cvs-request at xiph.org'
containing only the word 'unsubscribe' in the body. No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.
More information about the commits
mailing list