fltk/test/tabs.fl

346 lines
11 KiB
Plaintext
Raw Normal View History

# data file for the Fltk User Interface Designer (fluid)
version 1.0400
header_name {.h}
code_name {.cxx}
Function {} {open
} {
Fl_Window foo_window {
label {Comparison of Fl_Tab (left) vs. Fl_Wizard (right)} open
xywh {330 402 660 400} type Double resizable visible
} {
Fl_Box {} {
label {class Fl_Tabs}
xywh {95 0 130 35} labeltype ENGRAVED_LABEL labelfont 1
}
Fl_Tabs tabs_group {
callback {Fl_Widget *sel_tab = o->value();
if (sel_tab) {
printf("Callback called for tab \\"%s\\"\\n", sel_tab->label());
} else {
printf("Callback called\\n");
}} open selected
tooltip {the various index cards test different aspects of the Fl_Tabs widget} xywh {10 35 315 260} selection_color 4 labelcolor 7 resizable
2023-01-10 17:19:32 +03:00
code0 {// tabs_group->handle_overflow(Fl_Tabs::OVERFLOW_PULLDOWN);}
} {
Fl_Group {} {
label {Label&1}
callback {if (Fl::callback_reason()==FL_REASON_CLOSED)
2023-01-10 17:19:32 +03:00
o->parent()->remove(o);}
2023-01-06 01:16:54 +03:00
tooltip {this tab tests correct keyboard navigation between text input fields} xywh {10 60 315 235} selection_color 1 when 16 resizable
} {
Fl_Input {} {
label {input:}
tooltip {This is the first input field} xywh {70 80 240 40}
}
Fl_Input {} {
label {input2:}
xywh {70 120 240 30}
code0 {o->tooltip("");}
}
Fl_Input {} {
label {input3:}
xywh {70 150 240 80}
}
}
Fl_Group {} {
label {tab&2}
callback {if (Fl::callback_reason()==FL_REASON_CLOSED)
2023-01-06 01:16:54 +03:00
o->parent()->remove(o);}
tooltip {tab2 tests among other things the cooperation of modal windows and tabs} xywh {10 60 315 235} selection_color 2 when 16 hide
} {
Fl_Button {} {
label button1
callback {fl_message("Test to see if this modal window prevents you from "
"changing the tabs. It should.");}
xywh {20 85 100 30}
code0 {\#include <FL/fl_ask.H>}
}
Fl_Input {} {
label {input in box2}
xywh {130 130 175 30}
}
Fl_Button {} {
label {This is stuff inside the Fl_Group "tab2"}
xywh {25 170 280 30}
}
Fl_Button {} {
label {Test event blocking by modal window}
callback {fl_message("Make sure you cannot change the tabs while this modal window is up");}
xywh {25 200 280 30}
code0 {\#include <FL/fl_ask.H>}
}
}
Fl_Group {} {
label {tab&3}
callback {if (Fl::callback_reason()==FL_REASON_CLOSED)
2023-01-06 01:16:54 +03:00
o->parent()->remove(o);}
tooltip {tab3 checks for correct keyboard navigation} xywh {10 60 315 235} selection_color 3 when 16 hide
} {
Fl_Button {} {
label button2
xywh {20 80 60 80}
}
Fl_Button {} {
label button
xywh {80 80 60 80}
}
Fl_Button {} {
label button
xywh {140 80 60 80}
}
}
Fl_Group {} {
label {&tab4}
callback {if (Fl::callback_reason()==FL_REASON_CLOSED)
2023-01-06 01:16:54 +03:00
o->parent()->remove(o);}
tooltip {this tab shows the issue of indicating a selected tab if the tab layouts are very similar} xywh {10 60 315 235} selection_color 5 labeltype ENGRAVED_LABEL labelfont 2 when 16 hide
} {
Fl_Button {} {
label button2
xywh {20 80 60 120}
}
Fl_Button {} {
label button
xywh {80 80 60 120}
}
Fl_Button {} {
label button
xywh {140 80 60 120}
}
}
Fl_Group {} {
2023-01-06 01:16:54 +03:00
label {@fileprint &print}
tooltip {tab5 verifies if visibility requests are handled correctly} xywh {10 60 315 235} hide
} {
Fl_Button {} {
label button2
tooltip {button2 has a different tooltip than tab5} xywh {20 80 60 80}
}
Fl_Button {} {
label button
xywh {90 80 60 80}
}
Fl_Clock {} {
label {Make sure this clock does not use processor time when this tab is hidden or window is iconized}
xywh {185 80 120 120} box OSHADOW_BOX color 238 selection_color 0 labelfont 8 labelsize 10 align 130
}
Fl_Group {} {open
xywh {20 190 40 55} box THIN_DOWN_BOX color 173 align 16
class Fl_Window
} {}
Fl_Group {} {
label {subwindows:} open
xywh {65 190 40 55} box THIN_DOWN_BOX color 167
class Fl_Window
} {}
Fl_Group {} {open
xywh {110 190 40 55} box THIN_DOWN_BOX color 239 align 16
class Fl_Window
} {}
}
}
Fl_Box {} {
label {class Fl_Wizard}
xywh {410 0 130 35} labeltype ENGRAVED_LABEL labelfont 1
}
Fl_Wizard wWizard {open
xywh {330 35 320 260}
} {
Fl_Group {} {
label Label1
tooltip {this tab tests correct keyboard navigation between text input fields} xywh {330 60 320 235} selection_color 1 hide resizable
} {
Fl_Input {} {
label {input:}
tooltip {This is the first input field} xywh {390 80 240 40}
}
Fl_Input {} {
label {input2:}
xywh {390 120 240 30}
code0 {o->tooltip("");}
}
Fl_Input {} {
label {input3:}
xywh {390 150 240 80}
}
}
Fl_Group {} {
label tab2
tooltip {tab2 tests among other things the cooperation of modal windows and tabs} xywh {330 60 320 235} selection_color 2
} {
Fl_Button {} {
label button1
callback {fl_message("Test to see if this modal window prevents you from "
"changing the tabs. It should.");}
xywh {350 85 100 30}
code0 {\#include <FL/fl_ask.H>}
}
Fl_Input {} {
label {input in box2}
xywh {455 130 175 30}
}
Fl_Button {} {
label {This is stuff inside the Fl_Group "tab2"}
xywh {350 170 280 30}
}
Fl_Button {} {
label {Test event blocking by modal window}
callback {fl_message("Make sure you cannot change the tabs while this modal window is up");}
xywh {350 200 280 30}
code0 {\#include <FL/fl_ask.H>}
}
}
Fl_Group {} {
label tab3
tooltip {tab3 checks for correct keyboard navigation} xywh {330 60 320 235} selection_color 3 hide
} {
Fl_Button {} {
label button2
xywh {350 80 60 80}
}
Fl_Button {} {
label button
xywh {410 80 60 80}
}
Fl_Button {} {
label button
xywh {470 80 60 80}
}
}
Fl_Group {} {
label tab4
tooltip {this tab shows the issue of indicating a selected tab if the tab layouts are very similar} xywh {330 60 320 235} selection_color 5 labelfont 2 hide
} {
Fl_Button {} {
label button2
xywh {350 80 60 120}
}
Fl_Button {} {
label button
xywh {410 80 60 120}
}
Fl_Button {} {
label button
xywh {470 80 60 120}
}
}
Fl_Group {} {
label { tab5 } open
tooltip {tab5 verifies if visibility requests are handled correctly} xywh {330 60 320 235} labeltype ENGRAVED_LABEL hide
} {
Fl_Button {} {
label button2
tooltip {button2 has a different tooltip than tab5} xywh {350 80 60 80}
}
Fl_Button {} {
label button
xywh {420 80 60 80}
}
Fl_Clock {} {
label {Make sure this clock does not use processor time when this tab is hidden or window is iconized}
xywh {510 80 120 120} box OSHADOW_BOX color 238 selection_color 0 labelfont 8 labelsize 10 align 130
}
Fl_Group {} {open
xywh {350 190 40 55} box THIN_DOWN_BOX color 173 align 16
class Fl_Window
} {}
Fl_Group {} {
label {subwindows:} open
xywh {395 190 40 55} box THIN_DOWN_BOX color 167
class Fl_Window
} {}
Fl_Group {} {open
xywh {440 190 40 55} box THIN_DOWN_BOX color 239 align 16
class Fl_Window
} {}
}
}
Fl_Group {} {
xywh {410 305 130 25}
} {
Fl_Button {} {
label {@|<}
callback {wWizard->value(wWizard->child(0));}
tooltip {go to first page [Home]} xywh {410 305 30 25} shortcut 0xff50
}
Fl_Button {} {
label {@<}
callback {wWizard->prev();}
tooltip {go to previous page [left arrow]} xywh {440 305 30 25} shortcut 0xff51
}
Fl_Button {} {
label {@>}
callback {wWizard->next();}
tooltip {go to next page in wizard [right arrow]} xywh {480 305 30 25} shortcut 0xff53
}
Fl_Button {} {
label {@>|}
callback {int last = wWizard->children()-1;
wWizard->value(wWizard->child(last));}
tooltip {go to last page [End]} xywh {510 305 30 25} shortcut 0xff57
}
}
Fl_Button {} {
label {add tab}
callback {static int n = 6;
int X = tabs_group->x(), Y = tabs_group->y()+25;
int W = tabs_group->w(), H = tabs_group->h()-25;
Fl_Group::current(NULL);
char buf[64];
snprintf(buf, 62, "tab%d", n);
Fl_Group* new_tab = new Fl_Group(X, Y, W, H);
new_tab->copy_label(buf);
new_tab->when(FL_WHEN_CLOSED);
new_tab->callback((Fl_Callback*)cb_tab);
snprintf(buf, 62, "Empty tab %d.", n);
Fl_Box* box = new Fl_Box(X+5, Y+5, W-10, H-10);
box->copy_label(buf);
box->align(Fl_Align(FL_ALIGN_CENTER|FL_ALIGN_INSIDE));
tabs_group->add(new_tab);
n++;}
tooltip {Add more tabs to check overflow handling.} xywh {60 309 70 25}
}
Fl_Choice {} {
label {overflow:} open
tooltip {Change how Fl_Tabs handles more tabs than fit into the tabs space.} xywh {212 309 95 25} down_box BORDER_BOX
} {
MenuItem {} {
label compress
callback {tabs_group->handle_overflow(Fl_Tabs::OVERFLOW_COMPRESS);}
xywh {0 0 31 20}
}
MenuItem {} {
label clip
callback {tabs_group->handle_overflow(Fl_Tabs::OVERFLOW_CLIP);}
xywh {0 0 31 20}
}
MenuItem {} {
label pulldown
callback {tabs_group->handle_overflow(Fl_Tabs::OVERFLOW_PULLDOWN);}
xywh {0 0 31 20}
}
MenuItem {} {
label drag
callback {tabs_group->handle_overflow(Fl_Tabs::OVERFLOW_DRAG);}
xywh {0 0 31 20}
}
}
Fl_Input {} {
label {input:}
xywh {60 345 250 25}
}
Fl_Button {} {
label cancel
callback {exit(1);}
xywh {490 345 70 30}
code0 {\#include <stdlib.h>}
}
Fl_Return_Button {} {
label OK
callback {exit(0);}
xywh {570 345 70 30}
code0 {\#include <stdlib.h>}
}
}
}