#ifndef FD_xtuner_h_ #include "xtuner.h" #endif extern xtuner_data_t xtuner_data; extern Display *dpy; extern GC canvasGC; /* Main xtuner form */ FD_xtuner *create_form_xtuner(void) { FL_OBJECT *obj; FD_xtuner *fdui = (FD_xtuner *) fl_calloc(1, sizeof(*fdui)); int old_bw = fl_get_border_width(); /* ----------------------------------------------------------------- */ /* Main Xtuner window */ /* ----------------------------------------------------------------- */ fdui->xtuner = fl_bgn_form(FL_NO_BOX,510,170); obj = fl_add_box(FL_UP_BOX,0,0,510,170,""); obj = fl_add_text(FL_NORMAL_TEXT,10,80,200,20,"Xtuner by Mike Tinnes"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_LARGE_SIZE); fl_set_object_lalign(obj,FL_ALIGN_LEFT|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE+FL_SHADOW_STYLE); fdui->canvas = obj = fl_add_canvas(FL_NORMAL_CANVAS,20,20,250,50,""); fdui->on_timer = obj = fl_add_timer(FL_HIDDEN_TIMER,0,0,0,0,""); fl_set_object_callback(obj,do_timer,ON); fdui->off_timer = obj = fl_add_timer(FL_HIDDEN_TIMER,0,0,0,0,""); fl_set_object_callback(obj,do_timer,OFF); fdui->update_timer = obj = fl_add_timer(FL_HIDDEN_TIMER,0,0,0,0,""); fl_set_object_callback(obj,do_timer,UPDATE); /* --------- buttons ----------- */ fdui->power_but = obj = fl_add_lightbutton(FL_PUSH_BUTTON,430,20,50,30,""); fl_set_object_color(obj,FL_COL1,FL_RED); fl_set_object_callback(obj,power,0); fdui->on_timer_but = obj = fl_add_lightbutton(FL_PUSH_BUTTON,10,120,40,20,"On"); fl_set_object_callback(obj,set_timer,ON); fdui->auto_but = obj = fl_add_lightbutton(FL_PUSH_BUTTON,100,120,40,20,"On"); fl_set_object_callback(obj,set_timer,AUTOON); obj = fl_add_button(FL_NORMAL_BUTTON,140,120,40,20,"Off"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_callback(obj,set_timer,AUTOOFF); obj = fl_add_button(FL_NORMAL_BUTTON,50,120,40,20,"Off"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_callback(obj,set_timer,OFF); fdui->volumedn = obj = fl_add_button(FL_TOUCH_BUTTON,190,120,40,20,"-"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,adjust_volume,1); fdui->volumeup = obj = fl_add_button(FL_TOUCH_BUTTON,230,120,40,20,"+"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,adjust_volume,0); fdui->mute_but = obj = fl_add_lightbutton(FL_PUSH_BUTTON,280,120,40,20,""); fl_set_object_callback(obj,mute,0); fdui->fine_down = obj = fl_add_button(FL_TOUCH_BUTTON,330,120,40,20,"-"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,tuner,0); fdui->fine_up = obj = fl_add_button(FL_TOUCH_BUTTON,370,120,40,20,"+"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,tuner,2); fdui->left_tune = obj = fl_add_button(FL_TOUCH_BUTTON,420,120,40,20,"<"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,tuner,1); fl_set_object_dblclick(obj, 1); fdui->right_tune = obj = fl_add_button(FL_TOUCH_BUTTON,460,120,40,20,">"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,tuner,3); /* ---------- Text ----------- */ obj = fl_add_text(FL_NORMAL_TEXT,430,50,50,30,"Power"); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,10,140,80,20,"Sleep"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,115,140,50,20,"Alarm"); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); fdui->vol_text = obj = fl_add_text(FL_NORMAL_TEXT,190,140,80,20,"Volume"); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); fdui->fine_text = obj = fl_add_text(FL_NORMAL_TEXT,330,140,80,20,"Fine"); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,420,140,80,20,"Tune"); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,275,140,50,20,"Mute"); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); /* -------- Preset group ----------- */ fdui->presets = fl_bgn_group(); fdui->setmem = obj = fl_add_lightbutton(FL_RADIO_BUTTON,210,80,60,20,"Mem"); fl_set_object_color(obj,FL_COL1,FL_RED); fl_set_object_callback(obj,set_presets,0); fdui->mem5 = obj = fl_add_button(FL_NORMAL_BUTTON,300,60,30,30,"5"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,5); fdui->mem1 = obj = fl_add_button(FL_NORMAL_BUTTON,300,20,30,30,"1"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,1); fdui->mem2 = obj = fl_add_button(FL_NORMAL_BUTTON,330,20,30,30,"2"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,2); fdui->mem6 = obj = fl_add_button(FL_NORMAL_BUTTON,330,60,30,30,"6"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,6); fdui->mem3 = obj = fl_add_button(FL_NORMAL_BUTTON,360,20,30,30,"3"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,3); fdui->mem7 = obj = fl_add_button(FL_NORMAL_BUTTON,360,60,30,30,"7"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,7); fdui->mem4 = obj = fl_add_button(FL_NORMAL_BUTTON,390,20,30,30,"4"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,4); fdui->mem8 = obj = fl_add_button(FL_NORMAL_BUTTON,390,60,30,30,"8"); fl_set_object_color(obj,FL_COL1,FL_BOTTOM_BCOL); fl_set_object_lcol(obj,FL_GREEN); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lstyle(obj,FL_NORMAL_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,preset,8); fl_end_group(); /* -------- frames --------- */ obj = fl_add_frame(FL_UP_FRAME,10,10,270,100,""); obj = fl_add_frame(FL_UP_FRAME,290,10,210,100,""); obj = fl_add_frame(FL_ENGRAVED_FRAME,10,120,80,40,""); obj = fl_add_frame(FL_ENGRAVED_FRAME,420,120,80,40,""); obj = fl_add_frame(FL_ENGRAVED_FRAME,280,120,40,40,""); obj = fl_add_frame(FL_ENGRAVED_FRAME,100,120,80,40,""); fdui->vol_frame = obj = fl_add_frame(FL_ENGRAVED_FRAME,190,120,80,40,""); fdui->fine_frame = obj = fl_add_frame(FL_ENGRAVED_FRAME,330,120,80,40,""); fl_end_form(); return fdui; } /* ======================================================================== */ /* The two forms displayed on exit */ FD_misc *create_form_misc(void) { FL_OBJECT *obj; FD_misc *fdui = (FD_misc *) fl_calloc(1, sizeof(*fdui)); /* ------------------------------------------------------------------ */ /* First quit form */ /* ------------------------------------------------------------------ */ fdui->quitform = fl_bgn_form(FL_UP_BOX, 320, 120); fl_add_box(FL_NO_BOX,160,40,0,0,"Do you want to quit?"); fdui->yes = obj = fl_add_button(FL_NORMAL_BUTTON,40,70,80,30,"Yes"); fdui->no = obj = fl_add_button(FL_NORMAL_BUTTON,200,70,80,30,"No"); fl_end_form(); /* ------------------------------------------------------------------ */ /* Second quitform */ /* ------------------------------------------------------------------ */ fdui->quitform2 = fl_bgn_form(FL_UP_BOX, 320, 120); fl_add_box(FL_NO_BOX,160,40,0,0,"Play music in background?"); fdui->sp = obj = fl_add_button(FL_NORMAL_BUTTON,40,70,80,30,"Yes"); fdui->dp = obj = fl_add_button(FL_NORMAL_BUTTON,200,70,80,30,"No"); fl_end_form(); /* ------------------------------------------------------------------ */ /* Timer setting windows */ /* ------------------------------------------------------------------ */ fdui->set_time = fl_bgn_form(FL_NO_BOX, 170, 130); obj = fl_add_box(FL_UP_BOX,0,0,170,130,""); fdui->hrs_up = obj = fl_add_button(FL_TOUCH_BUTTON,40,70,20,20,"+"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,do_set_time,0); fdui->hrs_dn = obj = fl_add_button(FL_TOUCH_BUTTON,60,70,20,20,"-"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,do_set_time,1); fdui->mins_up = obj = fl_add_button(FL_TOUCH_BUTTON,90,70,20,20,"+"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,do_set_time,2); fdui->mins_dn = obj = fl_add_button(FL_TOUCH_BUTTON,110,70,20,20,"-"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE+FL_ENGRAVED_STYLE); fl_set_object_callback(obj,do_set_time,3); fdui->hours = obj = fl_add_box(FL_FRAME_BOX,40,40,40,30,""); fl_set_object_lsize(obj,FL_HUGE_SIZE); fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE); fdui->mins = obj = fl_add_box(FL_FRAME_BOX,90,40,40,30,""); fl_set_object_lsize(obj,FL_HUGE_SIZE); fl_set_object_lstyle(obj,FL_TIMESBOLD_STYLE); fl_set_object_callback(obj,do_set_time,2); obj = fl_add_text(FL_NORMAL_TEXT,80,40,10,20,"*"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_BLACK,FL_BLACK); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_FIXEDBOLD_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,80,50,10,20,"*"); fl_set_object_boxtype(obj,FL_NO_BOX); fl_set_object_color(obj,FL_BLACK,FL_BLACK); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_FIXEDBOLD_STYLE); obj = fl_add_text(FL_NORMAL_TEXT,50,10,70,20,"Set Time"); fl_set_object_lcol(obj,FL_WHITE); fl_set_object_lsize(obj,FL_MEDIUM_SIZE); fl_set_object_lalign(obj,FL_ALIGN_CENTER|FL_ALIGN_INSIDE); fl_set_object_lstyle(obj,FL_TIMESBOLDITALIC_STYLE+FL_SHADOW_STYLE); fdui->done = obj = fl_add_button(FL_NORMAL_BUTTON,40,100,90,20,"Done"); fl_set_object_lsize(obj,FL_NORMAL_SIZE); fl_set_object_lstyle(obj,FL_FIXED_STYLE); fl_end_form(); return fdui; }