33 #include "Fl_Window.H"
55 #define FL_WHEN_NEEDED FL_AUTO
63 #define FL_LCOL FL_BLACK
64 #define FL_COL1 FL_GRAY
65 #define FL_MCOL FL_LIGHT1
66 #define FL_LEFT_BCOL FL_LIGHT3 // 53 is better match
67 #define FL_TOP_BCOL FL_LIGHT2 // 51
68 #define FL_BOTTOM_BCOL FL_DARK2 // 40
69 #define FL_RIGHT_BCOL FL_DARK3 // 36
70 #define FL_INACTIVE FL_INACTIVE_COLOR
71 #define FL_INACTIVE_COL FL_INACTIVE_COLOR
72 #define FL_FREE_COL1 FL_FREE_COLOR
73 #define FL_FREE_COL2 ((Fl_Color)(FL_FREE_COLOR+1))
74 #define FL_FREE_COL3 ((Fl_Color)(FL_FREE_COLOR+2))
75 #define FL_FREE_COL4 ((Fl_Color)(FL_FREE_COLOR+3))
76 #define FL_FREE_COL5 ((Fl_Color)(FL_FREE_COLOR+4))
77 #define FL_FREE_COL6 ((Fl_Color)(FL_FREE_COLOR+5))
78 #define FL_FREE_COL7 ((Fl_Color)(FL_FREE_COLOR+6))
79 #define FL_FREE_COL8 ((Fl_Color)(FL_FREE_COLOR+7))
80 #define FL_FREE_COL9 ((Fl_Color)(FL_FREE_COLOR+8))
81 #define FL_FREE_COL10 ((Fl_Color)(FL_FREE_COLOR+9))
82 #define FL_FREE_COL11 ((Fl_Color)(FL_FREE_COLOR+10))
83 #define FL_FREE_COL12 ((Fl_Color)(FL_FREE_COLOR+11))
84 #define FL_FREE_COL13 ((Fl_Color)(FL_FREE_COLOR+12))
85 #define FL_FREE_COL14 ((Fl_Color)(FL_FREE_COLOR+13))
86 #define FL_FREE_COL15 ((Fl_Color)(FL_FREE_COLOR+14))
87 #define FL_FREE_COL16 ((Fl_Color)(FL_FREE_COLOR+15))
88 #define FL_TOMATO ((Fl_Color)(131))
89 #define FL_INDIANRED ((Fl_Color)(164))
90 #define FL_SLATEBLUE ((Fl_Color)(195))
91 #define FL_DARKGOLD ((Fl_Color)(84))
92 #define FL_PALEGREEN ((Fl_Color)(157))
93 #define FL_ORCHID ((Fl_Color)(203))
94 #define FL_DARKCYAN ((Fl_Color)(189))
95 #define FL_DARKTOMATO ((Fl_Color)(113))
96 #define FL_WHEAT ((Fl_Color)(174))
98 #define FL_ALIGN_BESIDE FL_ALIGN_INSIDE
100 #define FL_PUP_TOGGLE 2 // FL_MENU_TOGGLE
101 #define FL_PUP_INACTIVE 1 // FL_MENU_INACTIVE
102 #define FL_NO_FRAME FL_NO_BOX
103 #define FL_ROUNDED3D_UPBOX FL_ROUND_UP_BOX
104 #define FL_ROUNDED3D_DOWNBOX FL_ROUND_DOWN_BOX
105 #define FL_OVAL3D_UPBOX FL_ROUND_UP_BOX
106 #define FL_OVAL3D_DOWNBOX FL_ROUND_DOWN_BOX
108 #define FL_MBUTTON1 1
109 #define FL_LEFTMOUSE 1
110 #define FL_MBUTTON2 2
111 #define FL_MIDDLEMOUSE 2
112 #define FL_MBUTTON3 3
113 #define FL_RIGHTMOUSE 3
114 #define FL_MBUTTON4 4
115 #define FL_MBUTTON5 5
117 #define FL_INVALID_STYLE 255
118 #define FL_NORMAL_STYLE FL_HELVETICA
119 #define FL_BOLD_STYLE FL_HELVETICA_BOLD
120 #define FL_ITALIC_STYLE FL_HELVETICA_ITALIC
121 #define FL_BOLDITALIC_STYLE FL_HELVETICA_BOLD_ITALIC
122 #define FL_FIXED_STYLE FL_COURIER
123 #define FL_FIXEDBOLD_STYLE FL_COURIER_BOLD
124 #define FL_FIXEDITALIC_STYLE FL_COURIER_ITALIC
125 #define FL_FIXEDBOLDITALIC_STYLE FL_COURIER_BOLD_ITALIC
126 #define FL_TIMES_STYLE FL_TIMES
127 #define FL_TIMESBOLD_STYLE FL_TIMES_BOLD
128 #define FL_TIMESITALIC_STYLE FL_TIMES_ITALIC
129 #define FL_TIMESBOLDITALIC_STYLE FL_TIMES_BOLD_ITALIC
132 #define FL_SHADOW_STYLE (FL_SHADOW_LABEL<<8)
133 #define FL_ENGRAVED_STYLE (FL_ENGRAVED_LABEL<<8)
134 #define FL_EMBOSSED_STYLE (FL_EMBOSSED_LABEL<<0)
137 #define FL_TINY_SIZE 8
138 #define FL_SMALL_SIZE 11 // 10
140 #define FL_MEDIUM_SIZE 18 // 14
141 #define FL_LARGE_SIZE 24 // 18
142 #define FL_HUGE_SIZE 32 // 24
143 #define FL_DEFAULT_SIZE FL_SMALL_SIZE
144 #define FL_TINY_FONT FL_TINY_SIZE
145 #define FL_SMALL_FONT FL_SMALL_SIZE
146 #define FL_NORMAL_FONT FL_NORMAL_SIZE
147 #define FL_MEDIUM_FONT FL_MEDIUM_SIZE
148 #define FL_LARGE_FONT FL_LARGE_SIZE
149 #define FL_HUGE_FONT FL_HUGE_SIZE
150 #define FL_NORMAL_FONT1 FL_SMALL_FONT
151 #define FL_NORMAL_FONT2 FL_NORMAL_FONT
152 #define FL_DEFAULT_FONT FL_SMALL_FONT
154 #define FL_RETURN_END_CHANGED FL_WHEN_RELEASE
155 #define FL_RETURN_CHANGED FL_WHEN_CHANGED
156 #define FL_RETURN_END FL_WHEN_RELEASE_ALWAYS
157 #define FL_RETURN_ALWAYS (FL_WHEN_CHANGED|FL_WHEN_NOT_CHANGED)
159 #define FL_BOUND_WIDTH 3
161 typedef int FL_Coord;
162 typedef int FL_COLOR;
167 #define FL_CMD_OPT void
168 extern FL_EXPORT
void fl_initialize(
int*,
char*[],
const char*, FL_CMD_OPT*,
int);
169 inline void fl_finish() {}
171 typedef void (*FL_IO_CALLBACK) (int,
void*);
172 inline void fl_add_io_callback(
int fd,
short w, FL_IO_CALLBACK cb,
void* v) {
174 inline void fl_remove_io_callback(
int fd,
short, FL_IO_CALLBACK) {
178 inline void fl_add_timeout(
long msec,
void (*cb)(
void*),
void* v) {
180 inline void fl_remove_timeout(
int) {}
183 inline void fl_set_idle_callback(
void (*cb)()) {
Fl::set_idle(cb);}
187 inline Fl_Widget* fl_do_only_forms(
void) {
return fl_do_forms();}
188 inline Fl_Widget* fl_check_only_forms(
void) {
return fl_check_forms();}
191 inline void fl_freeze_object(
Fl_Widget*) {}
192 inline void fl_unfreeze_object(
Fl_Widget*) {}
193 inline void fl_freeze_form(
Fl_Window*) {}
194 inline void fl_unfreeze_form(
Fl_Window*) {}
195 inline void fl_freeze_all_forms() {}
196 inline void fl_unfreeze_all_forms() {}
200 #define fl_set_object_focus fl_set_focus_object
213 inline void fl_set_object_lstyle(
Fl_Widget* o,
int a) {
216 #define fl_set_object_lcolor fl_set_object_lcol
218 #define fl_set_object_align fl_set_object_lalign
222 inline void fl_set_object_size(
Fl_Widget* o,
int w,
int h) {o->
size(w,h);}
223 inline void fl_set_object_geometry(
Fl_Widget* o,
int x,
int y,
int w,
int h) {o->
resize(x,y,w,h);}
225 inline void fl_get_object_geometry(
Fl_Widget* o,
int*x,
int*y,
int*w,
int*h) {
226 *x = o->
x(); *y = o->
y(); *w = o->
w(); *h = o->
h();}
227 inline void fl_get_object_position(
Fl_Widget* o,
int*x,
int*y) {
228 *x = o->
x(); *y = o->
y();}
230 typedef void (*Forms_CB)(
Fl_Widget*, long);
231 inline void fl_set_object_callback(Fl_Widget*o,Forms_CB c,
long a) {o->
callback(c,a);}
232 #define fl_set_call_back fl_set_object_callback
233 inline void fl_call_object_callback(Fl_Widget* o) {o->
do_callback();}
234 inline void fl_trigger_object(Fl_Widget* o) {o->
do_callback();}
235 inline void fl_set_object_return(Fl_Widget* o,
int v) {
238 inline void fl_redraw_object(Fl_Widget* o) {o->
redraw();}
239 inline void fl_show_object(Fl_Widget* o) {o->
show();}
240 inline void fl_hide_object(Fl_Widget* o) {o->
hide();}
241 inline void fl_free_object(Fl_Widget* x) {
delete x;}
242 inline void fl_delete_object(Fl_Widget* o) {o->
parent()->
remove(*o);}
243 inline void fl_activate_object(Fl_Widget* o) {o->
activate();}
244 inline void fl_deactivate_object(Fl_Widget* o) {o->
deactivate();}
246 inline void fl_add_object(
Fl_Window* f, Fl_Widget* x) {f->
add(x);}
247 inline void fl_insert_object(Fl_Widget* o, Fl_Widget* b) {b->
parent()->
insert(*o,b);}
255 inline int fl_get_border_width() {
return 3;}
256 inline void fl_set_border_width(
int) {}
257 inline void fl_set_object_dblbuffer(Fl_Widget*,
int) {}
258 inline void fl_set_form_dblbuffer(
Fl_Window*,
int) {}
263 inline void fl_free_form(
Fl_Window* x) {
delete x;}
271 FL_EXPORT
void fl_end_form();
275 inline void fl_addto_group(Fl_Widget* o) {((
Fl_Group* )o)->begin();}
276 #define resizebox _ddfdesign_kludge()
278 inline void fl_scale_form(
Fl_Window* f,
double x,
double y) {
281 inline void fl_set_form_size(
Fl_Window* f,
int w,
int h) {f->
size(w,h);}
282 inline void fl_set_form_geometry(
Fl_Window* f,
int x,
int y,
int w,
int h) {
284 #define fl_set_initial_placement fl_set_form_geometry
285 inline void fl_adjust_form_size(
Fl_Window*) {}
287 FL_EXPORT
void fl_show_form(
Fl_Window* f,
int p,
int b,
const char* n);
292 FL_PLACE_POSITION = 4,
294 FL_PLACE_GEOMETRY =16,
295 FL_PLACE_ASPECT = 32,
296 FL_PLACE_FULLSCREEN=64,
297 FL_PLACE_HOTSPOT = 128,
298 FL_PLACE_ICONIC = 256,
299 FL_FREE_SIZE=(1<<14),
302 #define FL_PLACE_FREE_CENTER (FL_PLACE_CENTER|FL_FREE_SIZE)
303 #define FL_PLACE_CENTERFREE (FL_PLACE_CENTER|FL_FREE_SIZE)
310 inline void fl_set_form_hotspot(
Fl_Window* w,
int x,
int y) {w->
hotspot(x,y);}
311 inline void fl_set_form_hotobject(
Fl_Window* w, Fl_Widget* o) {w->
hotspot(o);}
312 extern FL_EXPORT
char fl_flip;
313 inline void fl_flip_yorigin() {fl_flip = 1;}
315 #define fl_prepare_form_window fl_show_form
316 inline void fl_show_form_window(
Fl_Window*) {}
323 extern FL_EXPORT
char fl_modal_next;
324 inline void fl_activate_all_forms() {}
325 inline void fl_deactivate_all_forms() {fl_modal_next = 1;}
329 inline void fl_set_form_title(
Fl_Window* f,
const char* s) {f->
label(s);}
330 inline void fl_title_form(
Fl_Window* f,
const char* s) {f->
label(s);}
332 typedef void (*Forms_FormCB)(Fl_Widget*);
334 #define fl_set_form_call_back fl_set_form_callback
336 inline void fl_init() {}
337 FL_EXPORT
void fl_set_graphics_mode(
int,
int);
342 #define fl_mousebutton fl_mouse_button
345 #define fl_malloc malloc
346 #define fl_calloc calloc
347 #define fl_realloc realloc
357 inline void fl_drw_text(
Fl_Align align,
int x,
int y,
int w,
int h,
366 inline void fl_drw_text_beside(
Fl_Align align,
int x,
int y,
int w,
int h,
378 #define fl_set_clipping(x,y,w,h) fl_push_clip(x,y,w,h)
379 #define fl_unset_clipping() fl_pop_clip()
384 inline Fl_Widget* fl_add_new(Fl_Widget* p) {
return p;}
385 inline Fl_Widget* fl_add_new(
uchar t,Fl_Widget* p) {p->
type(t);
return p;}
387 #define forms_constructor(type,name) \
388 inline type* name(uchar t,int x,int y,int w,int h,const char* l) { \
389 return (type*)(fl_add_new(t, new type(x,y,w,h,l)));}
390 #define forms_constructort(type,name) \
391 inline type* name(uchar t,int x,int y,int w,int h,const char* l) { \
392 return (type*)(fl_add_new(new type(t,x,y,w,h,l)));}
393 #define forms_constructorb(type,name) \
394 inline type* name(Fl_Boxtype t,int x,int y,int w,int h,const char* l) { \
395 return (type*)(fl_add_new(new type(t,x,y,w,h,l)));}
397 #include "Fl_FormsBitmap.H"
398 #define FL_NORMAL_BITMAP FL_NO_BOX
400 inline
void fl_set_bitmap_data(Fl_Widget* o,
int w,
int h, const
uchar* b) {
404 #include "Fl_FormsPixmap.H"
405 #define FL_NORMAL_PIXMAP FL_NO_BOX
407 inline
void fl_set_pixmap_data(Fl_Widget* o,
char*const* b) {
411 inline void fl_set_pixmap_align(Fl_Widget* o,
Fl_Align a,
int,
int) {o->
align(a);}
415 forms_constructorb(
Fl_Box, fl_add_box)
417 #include "Fl_Browser.H"
420 inline
void fl_clear_browser(Fl_Widget* o) {
422 inline void fl_add_browser_line(Fl_Widget* o,
const char* s) {
424 inline void fl_addto_browser(Fl_Widget* o,
const char* s) {
428 inline void fl_insert_browser_line(Fl_Widget* o,
int n,
const char* s) {
430 inline void fl_delete_browser_line(Fl_Widget* o,
int n) {
432 inline void fl_replace_browser_line(Fl_Widget* o,
int n,
const char* s) {
434 inline char* fl_get_browser_line(Fl_Widget* o,
int n) {
436 inline int fl_load_browser(Fl_Widget* o,
const char* f) {
438 inline void fl_select_browser_line(Fl_Widget* o,
int n) {
440 inline void fl_deselect_browser_line(Fl_Widget* o,
int n) {
442 inline void fl_deselect_browser(Fl_Widget* o) {
444 inline int fl_isselected_browser_line(Fl_Widget* o,
int n) {
446 inline int fl_get_browser_topline(Fl_Widget* o) {
448 inline int fl_get_browser(Fl_Widget* o) {
450 inline int fl_get_browser_maxline(Fl_Widget* o) {
453 inline void fl_set_browser_topline(Fl_Widget* o,
int n) {
455 inline void fl_set_browser_fontsize(Fl_Widget* o,
int s) {
457 inline void fl_set_browser_fontstyle(Fl_Widget* o,
Fl_Font s) {
459 inline void fl_set_browser_specialkey(Fl_Widget* o,
char c) {
470 inline void fl_setdisplayed_browser_line(Fl_Widget* o,
int n,
int i) {
472 inline int fl_isdisplayed_browser_line(Fl_Widget* o,
int n) {
475 #include "Fl_Button.H"
477 #define FL_NORMAL_BUTTON 0
478 #define FL_TOUCH_BUTTON 4
479 #define FL_INOUT_BUTTON 5
480 #define FL_RETURN_BUTTON 6
481 #define FL_HIDDEN_RET_BUTTON 7
482 #define FL_PUSH_BUTTON FL_TOGGLE_BUTTON
483 #define FL_MENU_BUTTON 9
485 FL_EXPORT
Fl_Button* fl_add_button(
uchar t,
int x,
int y,
int w,
int h,
const char* l);
486 inline int fl_get_button(Fl_Widget* b) {
return ((
Fl_Button*)b)->value();}
487 inline void fl_set_button(Fl_Widget* b,
int v) {((
Fl_Button*)b)->value(v);}
489 inline void fl_set_button_shortcut(Fl_Widget* b,
const char* s,
int=0) {
493 #include "Fl_Light_Button.H"
496 #include "Fl_Round_Button.H"
500 #include "Fl_Check_Button.H"
503 inline Fl_Widget* fl_add_bitmapbutton(
int t,
int x,
int y,
int w,
int h,const
char* l) {Fl_Widget* o = fl_add_button(t,x,y,w,h,l);
return o;}
504 inline void fl_set_bitmapbutton_data(Fl_Widget* o,
int a,
int b,
uchar* c) {
507 inline Fl_Widget* fl_add_pixmapbutton(
int t,
int x,
int y,
int w,
int h,
const char* l) {Fl_Widget* o = fl_add_button(t,x,y,w,h,l);
return o;}
508 inline void fl_set_pixmapbutton_data(Fl_Widget* o,
const char*
const* c) {
513 #include "Fl_Chart.H"
515 forms_constructor(
Fl_Chart, fl_add_chart)
516 inline
void fl_clear_chart(Fl_Widget* o) {
518 inline void fl_add_chart_value(Fl_Widget* o,
double v,
const char* s,
uchar c){
520 inline void fl_insert_chart_value(Fl_Widget* o,
int i,
double v,
const char* s,
uchar c) {
522 inline void fl_replace_chart_value(Fl_Widget* o,
int i,
double v,
const char* s,
uchar c) {
524 inline void fl_set_chart_bounds(Fl_Widget* o,
double a,
double b) {
526 inline void fl_set_chart_maxnumb(Fl_Widget* o,
int v) {
528 inline void fl_set_chart_autosize(Fl_Widget* o,
int v) {
530 inline void fl_set_chart_lstyle(Fl_Widget* o,
Fl_Font v) {
532 inline void fl_set_chart_lsize(Fl_Widget* o,
int v) {
534 inline void fl_set_chart_lcolor(Fl_Widget* o,
Fl_Color v) {
536 #define fl_set_chart_lcol fl_set_chart_lcolor
538 #include "Fl_Choice.H"
540 #define FL_NORMAL_CHOICE 0
541 #define FL_NORMAL_CHOICE2 0
542 #define FL_DROPLIST_CHOICE 0
544 forms_constructor(
Fl_Choice, fl_add_choice)
545 inline
void fl_clear_choice(Fl_Widget* o) {
547 inline void fl_addto_choice(Fl_Widget* o,
const char* s) {
549 inline void fl_replace_choice(Fl_Widget* o,
int i,
const char* s) {
551 inline void fl_delete_choice(Fl_Widget* o,
int i) {
553 inline void fl_set_choice(Fl_Widget* o,
int i) {
556 inline int fl_get_choice(Fl_Widget* o) {
560 inline const char* fl_get_choice_text(Fl_Widget* o) {
562 inline void fl_set_choice_fontsize(Fl_Widget* o,
int x) {
564 inline void fl_set_choice_fontstyle(Fl_Widget* o,
Fl_Font x) {
569 #include "Fl_Clock.H"
570 forms_constructort(
Fl_Clock, fl_add_clock)
571 inline
void fl_get_clock(Fl_Widget* o,
int* h,
int* m,
int* s) {
577 #include "Fl_Counter.H"
579 inline
void fl_set_counter_value(Fl_Widget* o,
double v) {
581 inline void fl_set_counter_bounds(Fl_Widget* o,
double a,
double b) {
583 inline void fl_set_counter_step(Fl_Widget* o,
double a,
double b) {
585 inline void fl_set_counter_precision(Fl_Widget* o,
int v) {
587 inline void fl_set_counter_return(Fl_Widget* o,
int v) {
589 inline double fl_get_counter_value(Fl_Widget* o) {
591 inline void fl_get_counter_bounds(Fl_Widget* o,
float* a,
float* b) {
599 #define FL_INVISIBLE_CURSOR FL_CURSOR_NONE
600 #define FL_DEFAULT_CURSOR FL_CURSOR_DEFAULT
604 #define FL_DIAL_COL1 FL_GRAY
605 #define FL_DIAL_COL2 37
607 forms_constructor(
Fl_Dial, fl_add_dial)
608 inline
void fl_set_dial_value(Fl_Widget* o,
double v) {
610 inline double fl_get_dial_value(Fl_Widget* o) {
611 return ((
Fl_Dial*)o)->value();}
612 inline void fl_set_dial_bounds(Fl_Widget* o,
double a,
double b) {
614 inline void fl_get_dial_bounds(Fl_Widget* o,
float* a,
float* b) {
615 *a = float(((
Fl_Dial*)o)->minimum());
616 *b = float(((
Fl_Dial*)o)->maximum());
618 inline void fl_set_dial_return(Fl_Widget* o,
int i) {
620 inline void fl_set_dial_angles(Fl_Widget* o,
int a,
int b) {
621 ((
Fl_Dial*)o)->angles((
short)a, (
short)b);}
625 inline void fl_set_dial_step(Fl_Widget* o,
double v) {
630 inline Fl_Widget* fl_add_frame(
Fl_Boxtype i,
int x,
int y,
int w,
int h,
const char* l) {
631 return fl_add_box(i,x-3,y-3,w+6,h+6,l);}
634 inline Fl_Widget* fl_add_labelframe(
Fl_Boxtype i,
int x,
int y,
int w,
int h,
const char* l) {
635 Fl_Widget* o = fl_add_box(i,x-3,y-3,w+6,h+6,l);
636 o->
align(FL_ALIGN_TOP_LEFT);
642 fl_add_free(
int t,
double x,
double y,
double w,
double h,
const char* l,
645 new Fl_Free(t,
int(x),
int(y),
int(w),
int(h),l,hdl)));
652 FL_EXPORT
void fl_show_message(
const char *,
const char *,
const char *);
653 FL_EXPORT
void fl_show_alert(
const char *,
const char *,
const char *,
int=0);
654 FL_EXPORT
int fl_show_question(
const char *,
const char *,
const char *);
655 inline const char *fl_show_input(
const char *l,
const char*d=0) {
return fl_input(
"%s",d,l);}
656 FL_EXPORT
char *fl_show_simple_input(
const char *label,
const char *deflt = 0);
657 FL_EXPORT
int fl_show_choice(
667 #define fl_show_messages fl_message
668 inline int fl_show_choices(
const char* c,
int n,
const char* b1,
const char* b2,
669 const char* b3,
int) {
670 return fl_show_choice(0,c,0,n,b1,b2,b3);
673 #include "filename.H"
674 #include "Fl_File_Chooser.H"
678 FL_EXPORT
char* fl_show_file_selector(
const char* message,
const char* dir,
679 const char* pat,
const char* fname);
680 FL_EXPORT
char* fl_get_directory();
681 FL_EXPORT
char* fl_get_pattern();
682 FL_EXPORT
char* fl_get_filename();
684 #include "Fl_Input.H"
685 forms_constructor(
Fl_Input, fl_add_input)
686 inline
void fl_set_input(Fl_Widget* o, const
char* v) {
688 inline void fl_set_input_return(Fl_Widget* o,
int x) {
695 inline void fl_set_input_cursorpos(Fl_Widget* o,
int x,
int ) {
708 inline int fl_get_input_cursorpos(Fl_Widget* o,
int*x,
int*y) {
709 *x = ((
Fl_Input*)o)->position(); *y = 0;
return *x;}
712 inline const char* fl_get_input(Fl_Widget* o) {
return ((
Fl_Input*)o)->value();}
714 #include "Fl_Menu_Button.H"
717 #define FL_TOUCH_MENU 0
718 #define FL_PUSH_MENU 1
719 #define FL_PULLDOWN_MENU 2
722 inline
void fl_clear_menu(Fl_Widget* o) {
724 inline void fl_set_menu(Fl_Widget* o,
const char* s) {
726 inline void fl_addto_menu(Fl_Widget* o,
const char* s) {
728 inline void fl_replace_menu_item(Fl_Widget* o,
int i,
const char* s) {
730 inline void fl_delete_menu_item(Fl_Widget* o,
int i) {
732 inline void fl_set_menu_item_shortcut(Fl_Widget* o,
int i,
const char* s) {
734 inline void fl_set_menu_item_mode(Fl_Widget* o,
int i,
long x) {
736 inline void fl_show_menu_symbol(Fl_Widget*,
int ) {
739 inline int fl_get_menu(Fl_Widget* o) {
741 inline const char* fl_get_menu_item_text(Fl_Widget* o,
int i) {
743 inline int fl_get_menu_maxitems(Fl_Widget* o) {
745 inline int fl_get_menu_item_mode(Fl_Widget* o,
int i) {
747 inline const char* fl_get_menu_text(Fl_Widget* o) {
750 #include "Fl_Positioner.H"
751 #define FL_NORMAL_POSITIONER 0
753 inline
void fl_set_positioner_xvalue(Fl_Widget* o,
double v) {
755 inline double fl_get_positioner_xvalue(Fl_Widget* o) {
757 inline void fl_set_positioner_xbounds(Fl_Widget* o,
double a,
double b) {
759 inline void fl_get_positioner_xbounds(Fl_Widget* o,
float* a,
float* b) {
763 inline void fl_set_positioner_yvalue(Fl_Widget* o,
double v) {
765 inline double fl_get_positioner_yvalue(Fl_Widget* o) {
767 inline void fl_set_positioner_ybounds(Fl_Widget* o,
double a,
double b) {
769 inline void fl_get_positioner_ybounds(Fl_Widget* o,
float* a,
float* b) {
773 inline void fl_set_positioner_xstep(Fl_Widget* o,
double v) {
775 inline void fl_set_positioner_ystep(Fl_Widget* o,
double v) {
777 inline void fl_set_positioner_return(Fl_Widget* o,
int v) {
780 #include "Fl_Slider.H"
782 #define FL_HOR_BROWSER_SLIDER FL_HOR_SLIDER
783 #define FL_VERT_BROWSER_SLIDER FL_VERT_SLIDER
785 forms_constructort(
Fl_Slider, fl_add_slider)
786 #define FL_SLIDER_COL1 FL_GRAY
787 inline void fl_set_slider_value(Fl_Widget* o,
double v) {
789 inline double fl_get_slider_value(Fl_Widget* o) {
791 inline void fl_set_slider_bounds(Fl_Widget* o,
double a,
double b) {
793 inline void fl_get_slider_bounds(Fl_Widget* o,
float* a,
float* b) {
797 inline void fl_set_slider_return(Fl_Widget* o,
int i) {
799 inline void fl_set_slider_step(Fl_Widget* o,
double v) {
802 inline void fl_set_slider_size(Fl_Widget* o,
double v) {
805 #include "Fl_Value_Slider.H"
808 inline
void fl_set_slider_precision(Fl_Widget* o,
int i) {
821 #define FL_NORMAL_TEXT FL_NO_BOX
824 #include "Fl_Timer.H"
825 forms_constructort(
Fl_Timer, fl_add_timer)
826 inline
void fl_set_timer(Fl_Widget* o,
double v) {((
Fl_Timer*)o)->value(v);}
827 inline double fl_get_timer(Fl_Widget* o) {
return ((
Fl_Timer*)o)->value();}
828 inline void fl_suspend_timer(Fl_Widget* o) {((
Fl_Timer*)o)->suspended(1);}
829 inline void fl_resume_timer(Fl_Widget* o) {((
Fl_Timer*)o)->suspended(0);}
830 inline void fl_set_timer_countup(Fl_Widget* o,
char d) {((
Fl_Timer*)o)->direction(d);}
831 void fl_gettime(
long* sec,
long* usec);
virtual void resize(int, int, int, int)
Changes the size and position of the window.
Controls a single floating point value with button (or keyboard) arrows.
Definition: Fl_Counter.H:57
Do the callback when the button or key is released and the value changes.
Definition: Enumerations.H:309
This widget produces an actual window.
Definition: Fl_Window.H:58
Fl_Cursor
The following constants define the mouse cursors that are available in FLTK.
Definition: Enumerations.H:882
The Fl_Pixmap class supports caching and drawing of colormap (pixmap) images, including transparency...
Definition: Fl_Pixmap.H:47
static Fl_Widget * focus()
Gets the current Fl::focus() widget.
Definition: Fl.H:706
const char * label() const
See void Fl_Window::label(const char*)
Definition: Fl_Window.H:318
This widget provides a round analog clock display.
Definition: Fl_Clock.H:122
The Fl_Dial widget provides a circular dial to control a single floating point value.
Definition: Fl_Dial.H:56
static void add_fd(int fd, int when, Fl_FD_Handler cb, void *=0)
Adds file descriptor fd to listen to.
The Fl_Value_Slider widget is a Fl_Slider widget with a box displaying the current value...
Definition: Fl_Value_Slider.H:42
FL_EXPORT unsigned int fl_old_shortcut(const char *s)
Emulation of XForms named shortcuts.
Definition: fl_shortcut.cxx:284
void cursor(Fl_Cursor, Fl_Color=FL_BLACK, Fl_Color=FL_WHITE)
Changes the cursor for this window.
Definition: fl_cursor.cxx:283
Fl_Chart displays simple charts.
Definition: Fl_Chart.H:81
void remove(int index)
Removes the widget at index from the group but does not delete it.
Definition: Fl_Group.cxx:506
void fl_color(Fl_Color c)
Sets the color for all subsequent drawing operations.
Definition: fl_draw.H:61
Fl_When
These constants determine when a callback is performed.
Definition: Enumerations.H:305
static void flush()
Causes all the windows that need it to be redrawn and graphics forced out through the pipes...
Definition: Fl.cxx:743
FL_EXPORT int fl_filename_match(const char *name, const char *pattern)
Checks if a string s matches a pattern p.
Definition: filename_match.cxx:53
int fl_choice(const char *fmt, const char *b0, const char *b1, const char *b2,...)
Shows a dialog displaying the fmt message, this dialog features up to 3 customizable choice buttons...
Definition: fl_ask.cxx:411
virtual void show()
Puts the window on the screen.
This widget simply draws its box, and possibly it's label.
Definition: Fl_Box.H:43
FL_EXPORT const char * fl_yes
string pointer used in common dialogs, you can change it to another language
Definition: fl_ask.cxx:268
static void add_timeout(double t, Fl_Timeout_Handler, void *=0)
Adds a one-shot timeout callback.
Definition: Fl.cxx:284
Fl_Boxtype
Definition: Enumerations.H:464
void hotspot(int x, int y, int offscreen=0)
Positions the window so that the mouse is pointing at the given position, or at the center of the giv...
Definition: Fl_Window_hotspot.cxx:33
void fl_font(Fl_Font face, Fl_Fontsize size)
Sets the current font, which is then used in various drawing routines.
Definition: fl_draw.H:500
static int event_button()
Gets which particular mouse button caused the current event.
Definition: Fl.H:572
void insert(Fl_Widget &, int i)
The widget is removed from its current group (if any) and then inserted into this group...
Definition: Fl_Group.cxx:461
The Fl_Group class is the FLTK container widget.
Definition: Fl_Group.H:45
void add(Fl_Widget &)
The widget is removed from its current group (if any) and then added to the end of this group...
Definition: Fl_Group.cxx:494
The Fl_Slider widget contains a sliding knob inside a box.
Definition: Fl_Slider.H:70
const char * fl_input(const char *fmt, const char *defstr,...)
Shows an input dialog displaying the fmt message.
Definition: fl_ask.cxx:456
void forms_end()
This is for forms compatibility only.
Definition: forms_compatability.cxx:38
FL_EXPORT const char * fl_no
string pointer used in common dialogs, you can change it to another language
Definition: fl_ask.cxx:267
The fl_show_colormap() function hides the implementation classes used to provide the popup window and...
void begin()
Sets the current group so you can build the widget tree by just constructing the widgets.
Definition: Fl_Group.cxx:74
FL_EXPORT void fl_draw_box(Fl_Boxtype, int x, int y, int w, int h, Fl_Color)
Draws a box using given type, position, size and color.
Definition: fl_boxtype.cxx:395
Emulation of the Forms "free" widget.
Definition: Fl_Free.H:66
static int event_clicks()
Returns non zero if we had a double click event.
Definition: Fl.H:542
void resizable(Fl_Widget &o)
See void Fl_Group::resizable(Fl_Widget *box)
Definition: Fl_Group.H:121
This class is provided for Forms compatibility.
Definition: Fl_Positioner.H:46
int Fl_Fontsize
Size of a font in pixels.
Definition: Enumerations.H:741
FL_EXPORT void fl_draw(const char *str, int x, int y)
Draws a nul-terminated string starting at the given location.
Definition: fl_font.cxx:73
A button that is used to pop up a menu.
Definition: Fl_Choice.H:85
utility header to pull drawing functions together
static void set_color(Fl_Color, uchar, uchar, uchar)
Sets an entry in the fl_color index table.
Definition: fl_color.cxx:377
unsigned int Fl_Color
an FLTK color value
Definition: Enumerations.H:769
Fl_Labeltype
The labeltype() method sets the type of the label.
Definition: Enumerations.H:606
int Fl_Font
A font number is an index into the internal font table.
Definition: Enumerations.H:712
static void set_font(Fl_Font, const char *)
Changes a face.
Definition: fl_set_font.cxx:43
unsigned Fl_Align
FLTK type for alignment control.
Definition: Enumerations.H:663
The Fl_Browser widget displays a scrolling list of text lines, and manages all the storage for the te...
Definition: Fl_Browser.H:89
The Fl_Bitmap class supports caching and drawing of mono-color (bitmap) images.
Definition: Fl_Bitmap.H:42
static void remove_fd(int, int when)
Removes a file descriptor handler.
const Fl_Align FL_ALIGN_LEFT
Align the label at the left of the widget.
Definition: Enumerations.H:674
static void set_idle(Fl_Old_Idle_Handler cb)
Sets an idle callback.
Definition: Fl.H:943
static Fl_Group * current()
Returns the currently active group.
Definition: Fl_Group.cxx:89
unsigned char uchar
unsigned char
Definition: fl_types.h:39
This is provided only to emulate the Forms Timer widget.
Definition: Fl_Timer.H:50
virtual void hide()
Removes the window from the screen.
Definition: Fl.cxx:1368