summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES1
-rw-r--r--FL/Fl_Box.H7
-rw-r--r--FL/Fl_Double_Window.H17
-rw-r--r--FL/Fl_Fill_Dial.H5
-rw-r--r--FL/Fl_Fill_Slider.H5
-rw-r--r--FL/Fl_Float_Input.H5
-rw-r--r--FL/Fl_Hold_Browser.H5
-rw-r--r--FL/Fl_Hor_Fill_Slider.H3
-rw-r--r--FL/Fl_Hor_Nice_Slider.H3
-rw-r--r--FL/Fl_Hor_Slider.H6
-rw-r--r--FL/Fl_Hor_Value_Slider.H3
-rw-r--r--FL/Fl_Input_Choice.H15
-rw-r--r--FL/Fl_Int_Input.H6
-rw-r--r--FL/Fl_Line_Dial.H3
-rw-r--r--FL/Fl_Menu_Bar.H3
-rw-r--r--FL/Fl_Menu_Window.H6
-rw-r--r--FL/Fl_Multi_Browser.H5
-rw-r--r--FL/Fl_Multiline_Input.H5
-rw-r--r--FL/Fl_Multiline_Output.H5
-rw-r--r--FL/Fl_Nice_Slider.H3
-rw-r--r--FL/Fl_Output.H5
-rw-r--r--FL/Fl_Overlay_Window.H6
-rw-r--r--FL/Fl_Radio_Button.H3
-rw-r--r--FL/Fl_Radio_Light_Button.H3
-rw-r--r--FL/Fl_Radio_Round_Button.H3
-rw-r--r--FL/Fl_Repeat_Button.H4
-rw-r--r--FL/Fl_Return_Button.H3
-rw-r--r--FL/Fl_Round_Clock.H5
-rw-r--r--FL/Fl_Secret_Input.H5
-rw-r--r--FL/Fl_Select_Browser.H5
-rw-r--r--FL/Fl_Simple_Counter.H3
-rw-r--r--FL/Fl_Single_Window.H8
-rw-r--r--FL/Fl_Spinner.H26
-rw-r--r--FL/Fl_Sys_Menu_Bar.H6
-rw-r--r--FL/Fl_Tile.H2
-rw-r--r--FL/Fl_Toggle_Button.H3
-rw-r--r--src/Fl_Box.cxx12
-rw-r--r--src/Fl_Browser.cxx39
-rw-r--r--src/Fl_Button.cxx17
-rw-r--r--src/Fl_Clock.cxx10
-rw-r--r--src/Fl_Counter.cxx8
-rw-r--r--src/Fl_Dial.cxx17
-rw-r--r--src/Fl_Double_Window.cxx37
-rw-r--r--src/Fl_Group.cxx51
-rw-r--r--src/Fl_Input.cxx33
-rw-r--r--src/Fl_Light_Button.cxx9
-rw-r--r--src/Fl_Menu_Bar.cxx6
-rw-r--r--src/Fl_Menu_Window.cxx14
-rw-r--r--src/Fl_Repeat_Button.cxx7
-rw-r--r--src/Fl_Return_Button.cxx7
-rw-r--r--src/Fl_Round_Button.cxx9
-rw-r--r--src/Fl_Single_Window.cxx26
-rw-r--r--src/Fl_Slider.cxx53
-rw-r--r--src/Fl_Sys_Menu_Bar.cxx9
-rw-r--r--src/Fl_Tile.cxx7
-rw-r--r--src/Fl_Value_Slider.cxx8
56 files changed, 363 insertions, 217 deletions
diff --git a/CHANGES b/CHANGES
index 59040f5d9..aa6279ac9 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,5 +1,6 @@
CHANGES IN FLTK 1.3.2
+ - Moved all inline constructors into source file to avoid bad DLLs
- Fixed Fl_Widget::copy_label() and Fl_Window::copy_label() when
called with the old label() (STR #2836)
diff --git a/FL/Fl_Box.H b/FL/Fl_Box.H
index f96b99b71..92ff301cc 100644
--- a/FL/Fl_Box.H
+++ b/FL/Fl_Box.H
@@ -44,11 +44,10 @@ public:
type.
<P>The destructor removes the box.
*/
- Fl_Box(int X, int Y, int W, int H, const char *l=0)
- : Fl_Widget(X,Y,W,H,l) {}
+ Fl_Box(int X, int Y, int W, int H, const char *l=0);
+
/** See Fl_Box::Fl_Box(int x, int y, int w, int h, const char * = 0) */
- Fl_Box(Fl_Boxtype b, int X, int Y, int W, int H, const char *l)
- : Fl_Widget(X,Y,W,H,l) {box(b);}
+ Fl_Box(Fl_Boxtype b, int X, int Y, int W, int H, const char *l);
virtual int handle(int);
};
diff --git a/FL/Fl_Double_Window.H b/FL/Fl_Double_Window.H
index 3ed38e876..e4ef883f5 100644
--- a/FL/Fl_Double_Window.H
+++ b/FL/Fl_Double_Window.H
@@ -52,17 +52,18 @@ public:
void resize(int,int,int,int);
void hide();
~Fl_Double_Window();
+
/**
- Creates a new Fl_Double_Window widget using the given
- position, size, and label (title) string.
+ Creates a new Fl_Double_Window widget using the given
+ position, size, and label (title) string.
*/
- Fl_Double_Window(int W, int H, const char *l = 0)
- : Fl_Window(W,H,l), force_doublebuffering_(0) { type(FL_DOUBLE_WINDOW); }
- /**
- See Fl_Double_Window::Fl_Double_Window(int w, int h, const char *label = 0)
+ Fl_Double_Window(int W, int H, const char *l = 0);
+
+ /**
+ See Fl_Double_Window::Fl_Double_Window(int w, int h, const char *label = 0)
*/
- Fl_Double_Window(int X, int Y, int W, int H, const char *l = 0)
- : Fl_Window(X,Y,W,H,l), force_doublebuffering_(0) { type(FL_DOUBLE_WINDOW); }
+ Fl_Double_Window(int X, int Y, int W, int H, const char *l = 0);
+
};
#endif
diff --git a/FL/Fl_Fill_Dial.H b/FL/Fl_Fill_Dial.H
index 95b8a3142..dbf2df05c 100644
--- a/FL/Fl_Fill_Dial.H
+++ b/FL/Fl_Fill_Dial.H
@@ -27,9 +27,8 @@
/** Draws a dial with a filled arc */
class FL_EXPORT Fl_Fill_Dial : public Fl_Dial {
public:
- /** Creates a filled dial, also setting its type to FL_FILL_DIAL. */
- Fl_Fill_Dial(int X,int Y,int W,int H, const char *L = 0)
- : Fl_Dial(X,Y,W,H,L) {type(FL_FILL_DIAL);}
+ /** Creates a filled dial, also setting its type to FL_FILL_DIAL. */
+ Fl_Fill_Dial(int X,int Y,int W,int H, const char *L);
};
#endif
diff --git a/FL/Fl_Fill_Slider.H b/FL/Fl_Fill_Slider.H
index 61841f07b..299c38e61 100644
--- a/FL/Fl_Fill_Slider.H
+++ b/FL/Fl_Fill_Slider.H
@@ -26,9 +26,8 @@
/** Widget that draws a filled horizontal slider, useful as a progress or value meter*/
class FL_EXPORT Fl_Fill_Slider : public Fl_Slider {
public:
- /** Creates the slider from its position,size and optional title. */
- Fl_Fill_Slider(int X,int Y,int W,int H,const char *L=0)
- : Fl_Slider(X,Y,W,H,L) {type(FL_VERT_FILL_SLIDER);}
+ /** Creates the slider from its position,size and optional title. */
+ Fl_Fill_Slider(int X,int Y,int W,int H,const char *L=0);
};
#endif
diff --git a/FL/Fl_Float_Input.H b/FL/Fl_Float_Input.H
index f5341161e..f60d4a284 100644
--- a/FL/Fl_Float_Input.H
+++ b/FL/Fl_Float_Input.H
@@ -37,12 +37,7 @@ public:
Inherited destructor destroys the widget and any value associated with it.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Input.cxx
Fl_Float_Input(int X,int Y,int W,int H,const char *l = 0);
-#else
- Fl_Float_Input(int X,int Y,int W,int H,const char *l = 0)
- : Fl_Input(X,Y,W,H,l) {type(FL_FLOAT_INPUT);}
-#endif
};
#endif
diff --git a/FL/Fl_Hold_Browser.H b/FL/Fl_Hold_Browser.H
index 0bf51a40e..7922b6cad 100644
--- a/FL/Fl_Hold_Browser.H
+++ b/FL/Fl_Hold_Browser.H
@@ -41,12 +41,7 @@ public:
The constructor specializes Fl_Browser() by setting the type to FL_HOLD_BROWSER.
The destructor destroys the widget and frees all memory that has been allocated.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Browser.cxx
Fl_Hold_Browser(int X,int Y,int W,int H,const char *L=0);
-#else
- Fl_Hold_Browser(int X,int Y,int W,int H,const char *L=0)
- : Fl_Browser(X,Y,W,H,L) {type(FL_HOLD_BROWSER);}
-#endif
};
#endif
diff --git a/FL/Fl_Hor_Fill_Slider.H b/FL/Fl_Hor_Fill_Slider.H
index 323b53c59..934bc059c 100644
--- a/FL/Fl_Hor_Fill_Slider.H
+++ b/FL/Fl_Hor_Fill_Slider.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Hor_Fill_Slider : public Fl_Slider {
public:
- Fl_Hor_Fill_Slider(int X,int Y,int W,int H,const char *L=0)
- : Fl_Slider(X,Y,W,H,L) {type(FL_HOR_FILL_SLIDER);}
+ Fl_Hor_Fill_Slider(int X,int Y,int W,int H,const char *L=0);
};
#endif
diff --git a/FL/Fl_Hor_Nice_Slider.H b/FL/Fl_Hor_Nice_Slider.H
index 64f810a54..c862f8bf1 100644
--- a/FL/Fl_Hor_Nice_Slider.H
+++ b/FL/Fl_Hor_Nice_Slider.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Hor_Nice_Slider : public Fl_Slider {
public:
- Fl_Hor_Nice_Slider(int X,int Y,int W,int H,const char *L=0)
- : Fl_Slider(X,Y,W,H,L) {type(FL_HOR_NICE_SLIDER); box(FL_FLAT_BOX);}
+ Fl_Hor_Nice_Slider(int X,int Y,int W,int H,const char *L=0);
};
#endif
diff --git a/FL/Fl_Hor_Slider.H b/FL/Fl_Hor_Slider.H
index 26c30e258..415cdb763 100644
--- a/FL/Fl_Hor_Slider.H
+++ b/FL/Fl_Hor_Slider.H
@@ -35,13 +35,7 @@ public:
Creates a new Fl_Hor_Slider widget using the given position,
size, and label string.
*/
-
-#if defined(FL_DLL) // implementation in src/Fl_Slider.cxx
Fl_Hor_Slider(int X,int Y,int W,int H,const char *l=0);
-#else
- Fl_Hor_Slider(int X,int Y,int W,int H,const char *l=0)
- : Fl_Slider(X,Y,W,H,l) { type(FL_HOR_SLIDER); }
-#endif
};
#endif
diff --git a/FL/Fl_Hor_Value_Slider.H b/FL/Fl_Hor_Value_Slider.H
index 668f7cf48..183a1cfcb 100644
--- a/FL/Fl_Hor_Value_Slider.H
+++ b/FL/Fl_Hor_Value_Slider.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Hor_Value_Slider : public Fl_Value_Slider {
public:
- Fl_Hor_Value_Slider(int X,int Y,int W,int H,const char *l=0)
- : Fl_Value_Slider(X,Y,W,H,l) {type(FL_HOR_SLIDER);}
+ Fl_Hor_Value_Slider(int X,int Y,int W,int H,const char *l=0);
};
#endif
diff --git a/FL/Fl_Input_Choice.H b/FL/Fl_Input_Choice.H
index d7fc01feb..d5e8bc569 100644
--- a/FL/Fl_Input_Choice.H
+++ b/FL/Fl_Input_Choice.H
@@ -131,20 +131,7 @@ public:
and label string.
Inherited destructor destroys the widget and any values associated with it.
*/
- Fl_Input_Choice (int X,int Y,int W,int H,const char*L=0) : Fl_Group(X,Y,W,H,L) {
- Fl_Group::box(FL_DOWN_BOX);
- align(FL_ALIGN_LEFT); // default like Fl_Input
- inp_ = new Fl_Input(inp_x(), inp_y(),
- inp_w(), inp_h());
- inp_->callback(inp_cb, (void*)this);
- inp_->box(FL_FLAT_BOX); // cosmetic
- inp_->when(FL_WHEN_CHANGED|FL_WHEN_NOT_CHANGED);
- menu_ = new InputMenuButton(menu_x(), menu_y(),
- menu_w(), menu_h());
- menu_->callback(menu_cb, (void*)this);
- menu_->box(FL_FLAT_BOX); // cosmetic
- end();
- }
+ Fl_Input_Choice(int X,int Y,int W,int H,const char*L=0);
/// Adds an item to the menu.
/// You can access the more complex Fl_Menu_Button::add() methods
diff --git a/FL/Fl_Int_Input.H b/FL/Fl_Int_Input.H
index f1a421b27..cb6e8141e 100644
--- a/FL/Fl_Int_Input.H
+++ b/FL/Fl_Int_Input.H
@@ -36,13 +36,7 @@ public:
Inherited destructor destroys the widget and any value associated with it.
*/
-
-#if defined(FL_DLL) // implementation in src/Fl_Input.cxx
Fl_Int_Input(int X,int Y,int W,int H,const char *l = 0);
-#else
- Fl_Int_Input(int X,int Y,int W,int H,const char *l = 0)
- : Fl_Input(X,Y,W,H,l) {type(FL_INT_INPUT);}
-#endif
};
#endif
diff --git a/FL/Fl_Line_Dial.H b/FL/Fl_Line_Dial.H
index 10aace4f0..150a05df5 100644
--- a/FL/Fl_Line_Dial.H
+++ b/FL/Fl_Line_Dial.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Line_Dial : public Fl_Dial {
public:
- Fl_Line_Dial(int X,int Y,int W,int H, const char *L = 0)
- : Fl_Dial(X,Y,W,H,L) {type(FL_LINE_DIAL);}
+ Fl_Line_Dial(int X,int Y,int W,int H, const char *L = 0);
};
#endif
diff --git a/FL/Fl_Menu_Bar.H b/FL/Fl_Menu_Bar.H
index 1f5a350c6..bc7f98b8b 100644
--- a/FL/Fl_Menu_Bar.H
+++ b/FL/Fl_Menu_Bar.H
@@ -69,8 +69,7 @@ public:
<P>The destructor removes the Fl_Menu_Bar widget and all of its
menu items.
*/
- Fl_Menu_Bar(int X, int Y, int W, int H,const char *l=0)
- : Fl_Menu_(X,Y,W,H,l) {}
+ Fl_Menu_Bar(int X, int Y, int W, int H,const char *l=0);
};
#endif
diff --git a/FL/Fl_Menu_Window.H b/FL/Fl_Menu_Window.H
index 952e5c297..90e6426b9 100644
--- a/FL/Fl_Menu_Window.H
+++ b/FL/Fl_Menu_Window.H
@@ -45,11 +45,9 @@ public:
void clear_overlay() {set_flag(NO_OVERLAY);}
~Fl_Menu_Window();
/** Creates a new Fl_Menu_Window widget using the given size, and label string. */
- Fl_Menu_Window(int W, int H, const char *l = 0)
- : Fl_Single_Window(W,H,l) { image(0); }
+ Fl_Menu_Window(int W, int H, const char *l = 0);
/** Creates a new Fl_Menu_Window widget using the given position, size, and label string. */
- Fl_Menu_Window(int X, int Y, int W, int H, const char *l = 0)
- : Fl_Single_Window(X,Y,W,H,l) { image(0); }
+ Fl_Menu_Window(int X, int Y, int W, int H, const char *l = 0);
};
#endif
diff --git a/FL/Fl_Multi_Browser.H b/FL/Fl_Multi_Browser.H
index 855e37102..0f33a3d6f 100644
--- a/FL/Fl_Multi_Browser.H
+++ b/FL/Fl_Multi_Browser.H
@@ -42,12 +42,7 @@ public:
The constructor specializes Fl_Browser() by setting the type to FL_MULTI_BROWSER.
The destructor destroys the widget and frees all memory that has been allocated.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Browser.cxx
Fl_Multi_Browser(int X,int Y,int W,int H,const char *L=0);
-#else
- Fl_Multi_Browser(int X,int Y,int W,int H,const char *L=0)
- : Fl_Browser(X,Y,W,H,L) {type(FL_MULTI_BROWSER);}
-#endif
};
#endif
diff --git a/FL/Fl_Multiline_Input.H b/FL/Fl_Multiline_Input.H
index 58cef7759..69cbac3de 100644
--- a/FL/Fl_Multiline_Input.H
+++ b/FL/Fl_Multiline_Input.H
@@ -50,12 +50,7 @@ public:
Inherited destructor destroys the widget and any value associated with it.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Input.cxx
Fl_Multiline_Input(int X,int Y,int W,int H,const char *l = 0);
-#else
- Fl_Multiline_Input(int X,int Y,int W,int H,const char *l = 0)
- : Fl_Input(X,Y,W,H,l) {type(FL_MULTILINE_INPUT);}
-#endif
};
#endif
diff --git a/FL/Fl_Multiline_Output.H b/FL/Fl_Multiline_Output.H
index 8d560e9dc..d5ffdc5d6 100644
--- a/FL/Fl_Multiline_Output.H
+++ b/FL/Fl_Multiline_Output.H
@@ -46,12 +46,7 @@ public:
Inherited destructor destroys the widget and any value associated with it.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Input.cxx
Fl_Multiline_Output(int X,int Y,int W,int H,const char *l = 0);
-#else
- Fl_Multiline_Output(int X,int Y,int W,int H,const char *l = 0)
- : Fl_Output(X,Y,W,H,l) {type(FL_MULTILINE_OUTPUT);}
-#endif
};
#endif
diff --git a/FL/Fl_Nice_Slider.H b/FL/Fl_Nice_Slider.H
index e7514c239..febeb940a 100644
--- a/FL/Fl_Nice_Slider.H
+++ b/FL/Fl_Nice_Slider.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Nice_Slider : public Fl_Slider {
public:
- Fl_Nice_Slider(int X,int Y,int W,int H,const char *L=0)
- : Fl_Slider(X,Y,W,H,L) {type(FL_VERT_NICE_SLIDER); box(FL_FLAT_BOX);}
+ Fl_Nice_Slider(int X,int Y,int W,int H,const char *L=0);
};
#endif
diff --git a/FL/Fl_Output.H b/FL/Fl_Output.H
index 93cd564d6..5d1827164 100644
--- a/FL/Fl_Output.H
+++ b/FL/Fl_Output.H
@@ -53,12 +53,7 @@ public:
Inherited destructor destroys the widget and any value associated with it.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Input.cxx
Fl_Output(int X,int Y,int W,int H, const char *l = 0);
-#else
- Fl_Output(int X,int Y,int W,int H, const char *l = 0)
- : Fl_Input(X, Y, W, H, l) {type(FL_NORMAL_OUTPUT);}
-#endif
};
#endif
diff --git a/FL/Fl_Overlay_Window.H b/FL/Fl_Overlay_Window.H
index eb8689c48..de45b6c17 100644
--- a/FL/Fl_Overlay_Window.H
+++ b/FL/Fl_Overlay_Window.H
@@ -62,16 +62,14 @@ protected:
/**
See Fl_Overlay_Window::Fl_Overlay_Window(int X, int Y, int W, int H, const char *l=0)
*/
- Fl_Overlay_Window(int W, int H, const char *l=0)
- : Fl_Double_Window(W,H,l) {overlay_ = 0; force_doublebuffering_=1; image(0); }
+ Fl_Overlay_Window(int W, int H, const char *l=0);
/**
Creates a new Fl_Overlay_Window widget using the given
position, size, and label (title) string. If the
positions (x,y) are not given, then the window manager
will choose them.
*/
- Fl_Overlay_Window(int X, int Y, int W, int H, const char *l=0)
- : Fl_Double_Window(X,Y,W,H,l) {overlay_ = 0; force_doublebuffering_=1; image(0); }
+ Fl_Overlay_Window(int X, int Y, int W, int H, const char *l=0);
public:
void show(int a, char **b) {Fl_Double_Window::show(a,b);}
};
diff --git a/FL/Fl_Radio_Button.H b/FL/Fl_Radio_Button.H
index 7238877a8..99d0922ca 100644
--- a/FL/Fl_Radio_Button.H
+++ b/FL/Fl_Radio_Button.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Radio_Button : public Fl_Button {
public:
- Fl_Radio_Button(int X,int Y,int W,int H,const char *L=0)
- : Fl_Button(X, Y, W, H, L) {type(FL_RADIO_BUTTON);}
+ Fl_Radio_Button(int X,int Y,int W,int H,const char *L=0);
};
#endif
diff --git a/FL/Fl_Radio_Light_Button.H b/FL/Fl_Radio_Light_Button.H
index 8e48d5c70..352dccfda 100644
--- a/FL/Fl_Radio_Light_Button.H
+++ b/FL/Fl_Radio_Light_Button.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Radio_Light_Button : public Fl_Light_Button {
public:
- Fl_Radio_Light_Button(int X,int Y,int W,int H,const char *l=0)
- : Fl_Light_Button(X,Y,W,H,l) {type(FL_RADIO_BUTTON);}
+ Fl_Radio_Light_Button(int X,int Y,int W,int H,const char *l=0);
};
#endif
diff --git a/FL/Fl_Radio_Round_Button.H b/FL/Fl_Radio_Round_Button.H
index f1c47b187..a53673827 100644
--- a/FL/Fl_Radio_Round_Button.H
+++ b/FL/Fl_Radio_Round_Button.H
@@ -26,8 +26,7 @@
class FL_EXPORT Fl_Radio_Round_Button : public Fl_Round_Button {
public:
- Fl_Radio_Round_Button(int X,int Y,int W,int H,const char *L=0)
- : Fl_Round_Button(X,Y,W,H,L) {type(FL_RADIO_BUTTON);}
+ Fl_Radio_Round_Button(int X,int Y,int W,int H,const char *L=0);
};
#endif
diff --git a/FL/Fl_Repeat_Button.H b/FL/Fl_Repeat_Button.H
index 235b661c1..f22df8899 100644
--- a/FL/Fl_Repeat_Button.H
+++ b/FL/Fl_Repeat_Button.H
@@ -39,8 +39,8 @@ public:
position, size, and label string. The default boxtype is FL_UP_BOX.
Deletes the button.
*/
- Fl_Repeat_Button(int X,int Y,int W,int H,const char *l=0)
- : Fl_Button(X,Y,W,H,l) {}
+ Fl_Repeat_Button(int X,int Y,int W,int H,const char *l=0);
+
void deactivate() {
Fl::remove_timeout(repeat_callback,this);
Fl_Button::deactivate();
diff --git a/FL/Fl_Return_Button.H b/FL/Fl_Return_Button.H
index d90ea9a66..54b4ab5ef 100644
--- a/FL/Fl_Return_Button.H
+++ b/FL/Fl_Return_Button.H
@@ -40,8 +40,7 @@ public:
position, size, and label string. The default boxtype is FL_UP_BOX.
<P> The inherited destructor deletes the button.
*/
- Fl_Return_Button(int X, int Y, int W, int H,const char *l=0)
- : Fl_Button(X,Y,W,H,l) {}
+ Fl_Return_Button(int X, int Y, int W, int H,const char *l=0);
};
#endif
diff --git a/FL/Fl_Round_Clock.H b/FL/Fl_Round_Clock.H
index ceb86d48d..3ae748256 100644
--- a/FL/Fl_Round_Clock.H
+++ b/FL/Fl_Round_Clock.H
@@ -27,9 +27,8 @@
/** A clock widget of type FL_ROUND_CLOCK. Has no box. */
class FL_EXPORT Fl_Round_Clock : public Fl_Clock {
public:
- /** Creates the clock widget, setting his type and box. */
- Fl_Round_Clock(int X,int Y,int W,int H, const char *L = 0)
- : Fl_Clock(X, Y, W, H, L) {type(FL_ROUND_CLOCK); box(FL_NO_BOX);}
+ /** Creates the clock widget, setting his type and box. */
+ Fl_Round_Clock(int X,int Y,int W,int H, const char *L = 0);
};
#endif
diff --git a/FL/Fl_Secret_Input.H b/FL/Fl_Secret_Input.H
index ae9e854fa..3df6d6be7 100644
--- a/FL/Fl_Secret_Input.H
+++ b/FL/Fl_Secret_Input.H
@@ -40,12 +40,7 @@ public:
Inherited destructor destroys the widget and any value associated with it.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Input.cxx
Fl_Secret_Input(int X,int Y,int W,int H,const char *l = 0);
-#else
- Fl_Secret_Input(int X,int Y,int W,int H,const char *l = 0)
- : Fl_Input(X,Y,W,H,l) {type(FL_SECRET_INPUT);}
-#endif
};
#endif
diff --git a/FL/Fl_Select_Browser.H b/FL/Fl_Select_Browser.H
index ea29534a4..123e24cf8 100644
--- a/FL/Fl_Select_Browser.H
+++ b/FL/Fl_Select_Browser.H
@@ -40,12 +40,7 @@ public:
The constructor specializes Fl_Browser() by setting the type to FL_SELECT_BROWSER.
The destructor destroys the widget and frees all memory that has been allocated.
*/
-#if defined(FL_DLL) // implementation in src/Fl_Browser.cxx
Fl_Select_Browser(int X,int Y,int W,int H,const char *L=0);
-#else
- Fl_Select_Browser(int X,int Y,int W,int H,const char *L=0)
- : Fl_Browser(X,Y,W,H,L) {type(FL_SELECT_BROWSER);}
-#endif
};
#endif
diff --git a/FL/Fl_Simple_Counter.H b/FL/Fl_Simple_Counter.H
index 3e80fefbd..8edc907af 100644
--- a/FL/Fl_Simple_Counter.H
+++ b/FL/Fl_Simple_Counter.H
@@ -30,8 +30,7 @@
*/
class FL_EXPORT Fl_Simple_Counter : public Fl_Counter {
public:
- Fl_Simple_Counter(int X,int Y,int W,int H, const char *L = 0)
- : Fl_Counter(X,Y,W,H,L) {type(FL_SIMPLE_COUNTER);}
+ Fl_Simple_Counter(int X,int Y,int W,int H, const char *L = 0);
};
#endif
diff --git a/FL/Fl_Single_Window.H b/FL/Fl_Single_Window.H
index 6002d8cba..dda14975e 100644
--- a/FL/Fl_Single_Window.H
+++ b/FL/Fl_Single_Window.H
@@ -40,14 +40,14 @@ public:
Creates a new Fl_Single_Window widget using the given
size, and label (title) string.
*/
- Fl_Single_Window(int W, int H, const char *l=0)
- : Fl_Window(W,H,l) {}
+ Fl_Single_Window(int W, int H, const char *l=0);
+
/**
Creates a new Fl_Single_Window widget using the given
position, size, and label (title) string.
*/
- Fl_Single_Window(int X, int Y, int W, int H, const char *l=0)
- : Fl_Window(X,Y,W,H,l) {}
+ Fl_Single_Window(int X, int Y, int W, int H, const char *l=0);
+
int make_current();
};
diff --git a/FL/Fl_Spinner.H b/FL/Fl_Spinner.H
index 90706d6b1..2262c924a 100644
--- a/FL/Fl_Spinner.H
+++ b/FL/Fl_Spinner.H
@@ -121,31 +121,7 @@ private:
and label string.
<P>Inherited destructor Destroys the widget and any value associated with it.
*/
- Fl_Spinner(int X, int Y, int W, int H, const char *L = 0)
- : Fl_Group(X, Y, W, H, L),
- input_(X, Y, W - H / 2 - 2, H),
- up_button_(X + W - H / 2 - 2, Y, H / 2 + 2, H / 2, "@-42<"),
- down_button_(X + W - H / 2 - 2, Y + H - H / 2,
- H / 2 + 2, H / 2, "@-42>") {
- end();
-
- value_ = 1.0;
- minimum_ = 1.0;
- maximum_ = 100.0;
- step_ = 1.0;
- format_ = "%g";
-
- align(FL_ALIGN_LEFT);
-
- input_.value("1");
- input_.type(FL_INT_INPUT);
- input_.when(FL_WHEN_ENTER_KEY | FL_WHEN_RELEASE);
- input_.callback((Fl_Callback *)sb_cb, this);
-
- up_button_.callback((Fl_Callback *)sb_cb, this);
-
- down_button_.callback((Fl_Callback *)sb_cb, this);
- }
+ Fl_Spinner(int X, int Y, int W, int H, const char *L = 0);
/** Sets or returns the format string for the value. */
const char *format() { return (format_); }
diff --git a/FL/Fl_Sys_Menu_Bar.H b/FL/Fl_Sys_Menu_Bar.H
index 988f73bef..e1dd7bb52 100644
--- a/FL/Fl_Sys_Menu_Bar.H
+++ b/FL/Fl_Sys_Menu_Bar.H
@@ -41,11 +41,7 @@ public:
*
* On Mac OS X, all arguments are unused. On other platforms they are used as by Fl_Menu_Bar::Fl_Menu_Bar().
*/
- Fl_Sys_Menu_Bar(int x,int y,int w,int h,const char *l=0)
- : Fl_Menu_Bar(x,y,w,h,l) {
- deactivate(); // don't let the old area take events
- fl_sys_menu_bar = this;
- }
+ Fl_Sys_Menu_Bar(int x,int y,int w,int h,const char *l=0);
const Fl_Menu_Item *menu() const {return Fl_Menu_::menu();}
void menu(const Fl_Menu_Item *m);
int add(const char* label, int shortcut, Fl_Callback*, void *user_data=0, int flags=0);
diff --git a/FL/Fl_Tile.H b/FL/Fl_Tile.H
index c83dfad97..2792c4150 100644
--- a/FL/Fl_Tile.H
+++ b/FL/Fl_Tile.H
@@ -81,7 +81,7 @@ public:
variables, but you must declare the Fl_Tile <I>first</I>, so
that it is destroyed last.
*/
- Fl_Tile(int X,int Y,int W,int H,const char*l=0) : Fl_Group(X,Y,W,H,l) {}
+ Fl_Tile(int X,int Y,int W,int H,const char*l=0);
void resize(int, int, int, int);
void position(int, int, int, int);
};
diff --git a/FL/Fl_Toggle_Button.H b/FL/Fl_Toggle_Button.H
index 41d612821..008565563 100644
--- a/FL/Fl_Toggle_Button.H
+++ b/FL/Fl_Toggle_Button.H
@@ -40,8 +40,7 @@ public:
position, size, and label string.
<P>The inherited destructor deletes the toggle button.
*/
- Fl_Toggle_Button(int X,int Y,int W,int H,const char *l=0)
- : Fl_Button(X,Y,W,H,l) {type(FL_TOGGLE_BUTTON);}
+ Fl_Toggle_Button(int X,int Y,int W,int H,const char *l=0);
};
#endif
diff --git a/src/Fl_Box.cxx b/src/Fl_Box.cxx
index a6d3d63c3..1dbc40468 100644
--- a/src/Fl_Box.cxx
+++ b/src/Fl_Box.cxx
@@ -19,6 +19,18 @@
#include <FL/Fl_Widget.H>
#include <FL/Fl_Box.H>
+
+Fl_Box::Fl_Box(int X, int Y, int W, int H, const char *l)
+: Fl_Widget(X,Y,W,H,l)
+{
+}
+
+Fl_Box::Fl_Box(Fl_Boxtype b, int X, int Y, int W, int H, const char *l)
+: Fl_Widget(X,Y,W,H,l)
+{
+ box(b);
+}
+
void Fl_Box::draw() {
draw_box();
draw_label();
diff --git a/src/Fl_Browser.cxx b/src/Fl_Browser.cxx
index 86e93d95a..b9c140780 100644
--- a/src/Fl_Browser.cxx
+++ b/src/Fl_Browser.cxx
@@ -23,11 +23,10 @@
#include <stdlib.h>
#include <math.h>
-#if defined(FL_DLL) // really needed for c'tors for MS VC++ only
#include <FL/Fl_Hold_Browser.H>
#include <FL/Fl_Multi_Browser.H>
#include <FL/Fl_Select_Browser.H>
-#endif
+
// I modified this from the original Forms data to use a linked list
// so that the number of items in the browser and size of those items
@@ -908,29 +907,27 @@ void Fl_Browser::remove_icon(int line) {
icon(line,0);
}
-/*
- The following constructors must not be in the header file(s) if we
- build a shared object (DLL). Instead they are defined here to force
- the constructor (and default destructor as well) to be defined in
- the DLL and exported (STR #2632, #2645).
-
- Note: if you change any of them, do the same changes in the specific
- header file as well. This redundant definition was chosen to enable
- inline constructors in the header files (for static linking) as well
- as those here for dynamic linking (Windows DLL).
-*/
-#if defined(FL_DLL)
- Fl_Hold_Browser::Fl_Hold_Browser(int X,int Y,int W,int H,const char *L)
- : Fl_Browser(X,Y,W,H,L) {type(FL_HOLD_BROWSER);}
+Fl_Hold_Browser::Fl_Hold_Browser(int X,int Y,int W,int H,const char *L)
+: Fl_Browser(X,Y,W,H,L)
+{
+ type(FL_HOLD_BROWSER);
+}
+
+
+Fl_Multi_Browser::Fl_Multi_Browser(int X,int Y,int W,int H,const char *L)
+: Fl_Browser(X,Y,W,H,L)
+{
+ type(FL_MULTI_BROWSER);
+}
- Fl_Multi_Browser::Fl_Multi_Browser(int X,int Y,int W,int H,const char *L)
- : Fl_Browser(X,Y,W,H,L) {type(FL_MULTI_BROWSER);}
- Fl_Select_Browser::Fl_Select_Browser(int X,int Y,int W,int H,const char *L)
- : Fl_Browser(X,Y,W,H,L) {type(FL_SELECT_BROWSER);}
+Fl_Select_Browser::Fl_Select_Browser(int X,int Y,int W,int H,const char *L)
+: Fl_Browser(X,Y,W,H,L)
+{
+ type(FL_SELECT_BROWSER);
+}
-#endif // FL_DLL
//
// End of "$Id$".
diff --git a/src/Fl_Button.cxx b/src/Fl_Button.cxx
index 33196ad8d..edc26a81e 100644
--- a/src/Fl_Button.cxx
+++ b/src/Fl_Button.cxx
@@ -21,6 +21,9 @@
#include <FL/Fl_Group.H>
#include <FL/Fl_Window.H>
+#include <FL/Fl_Radio_Button.H>
+#include <FL/Fl_Toggle_Button.H>
+
Fl_Widget_Tracker *Fl_Button::key_release_tracker = 0;
@@ -206,6 +209,20 @@ Fl_Button::Fl_Button(int X, int Y, int W, int H, const char *L)
set_flag(SHORTCUT_LABEL);
}
+
+Fl_Radio_Button::Fl_Radio_Button(int X,int Y,int W,int H,const char *L)
+: Fl_Button(X, Y, W, H, L) {
+ type(FL_RADIO_BUTTON);
+}
+
+
+Fl_Toggle_Button::Fl_Toggle_Button(int X,int Y,int W,int H,const char *l)
+: Fl_Button(X,Y,W,H,l)
+{
+ type(FL_TOGGLE_BUTTON);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Clock.cxx b/src/Fl_Clock.cxx
index 946768b65..3926ec1b7 100644
--- a/src/Fl_Clock.cxx
+++ b/src/Fl_Clock.cxx
@@ -18,6 +18,7 @@
#include <FL/Fl.H>
#include <FL/Fl_Clock.H>
+#include <FL/Fl_Round_Clock.H>
#include <FL/fl_draw.H>
#include <math.h>
#include <time.h>
@@ -204,6 +205,15 @@ Fl_Clock::~Fl_Clock() {
Fl::remove_timeout(tick, this);
}
+
+Fl_Round_Clock::Fl_Round_Clock(int X,int Y,int W,int H, const char *L)
+: Fl_Clock(X, Y, W, H, L)
+{
+ type(FL_ROUND_CLOCK);
+ box(FL_NO_BOX);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Counter.cxx b/src/Fl_Counter.cxx
index a2661e8a3..f27743df3 100644
--- a/src/Fl_Counter.cxx
+++ b/src/Fl_Counter.cxx
@@ -18,6 +18,7 @@
#include <FL/Fl.H>
#include <FL/Fl_Counter.H>
+#include <FL/Fl_Simple_Counter.H>
#include <FL/fl_draw.H>
void Fl_Counter::draw() {
@@ -197,6 +198,13 @@ Fl_Counter::Fl_Counter(int X, int Y, int W, int H, const char* L)
textcolor_ = FL_FOREGROUND_COLOR;
}
+
+Fl_Simple_Counter::Fl_Simple_Counter(int X,int Y,int W,int H, const char *L)
+: Fl_Counter(X,Y,W,H,L) {
+ type(FL_SIMPLE_COUNTER);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Dial.cxx b/src/Fl_Dial.cxx
index 1b6202bee..a29163ddc 100644
--- a/src/Fl_Dial.cxx
+++ b/src/Fl_Dial.cxx
@@ -18,10 +18,13 @@
#include <FL/Fl.H>
#include <FL/Fl_Dial.H>
+#include <FL/Fl_Fill_Dial.H>
+#include <FL/Fl_Line_Dial.H>
#include <FL/fl_draw.H>
#include <stdlib.h>
#include <FL/math.h>
+
// All angles are measured with 0 to the right and counter-clockwise
/**
Draws dial at given position and size.
@@ -152,6 +155,20 @@ Fl_Dial::Fl_Dial(int X, int Y, int W, int H, const char* l)
a2 = 315;
}
+
+Fl_Fill_Dial::Fl_Fill_Dial(int X,int Y,int W,int H, const char *L)
+: Fl_Dial(X,Y,W,H,L) {
+ type(FL_FILL_DIAL);
+}
+
+
+Fl_Line_Dial::Fl_Line_Dial(int X,int Y,int W,int H, const char *L)
+: Fl_Dial(X,Y,W,H,L)
+{
+ type(FL_LINE_DIAL);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Double_Window.cxx b/src/Fl_Double_Window.cxx
index 189cae305..713430e88 100644
--- a/src/Fl_Double_Window.cxx
+++ b/src/Fl_Double_Window.cxx
@@ -19,6 +19,7 @@
#include <config.h>
#include <FL/Fl.H>
#include <FL/Fl_Double_Window.H>
+#include <FL/Fl_Overlay_Window.H>
#include <FL/Fl_Printer.H>
#include <FL/x.H>
#include <FL/fl_draw.H>
@@ -55,6 +56,23 @@ static int can_xdbe() {
}
#endif
+
+Fl_Double_Window::Fl_Double_Window(int W, int H, const char *l)
+: Fl_Window(W,H,l),
+ force_doublebuffering_(0)
+{
+ type(FL_DOUBLE_WINDOW);
+}
+
+
+Fl_Double_Window::Fl_Double_Window(int X, int Y, int W, int H, const char *l)
+: Fl_Window(X,Y,W,H,l),
+ force_doublebuffering_(0)
+{
+ type(FL_DOUBLE_WINDOW);
+}
+
+
void Fl_Double_Window::show() {
Fl_Window::show();
}
@@ -473,6 +491,25 @@ Fl_Double_Window::~Fl_Double_Window() {
hide();
}
+
+Fl_Overlay_Window::Fl_Overlay_Window(int W, int H, const char *l)
+: Fl_Double_Window(W,H,l)
+{
+ overlay_ = 0;
+ force_doublebuffering_=1;
+ image(0);
+}
+
+
+Fl_Overlay_Window::Fl_Overlay_Window(int X, int Y, int W, int H, const char *l)
+: Fl_Double_Window(X,Y,W,H,l)
+{
+ overlay_ = 0;
+ force_doublebuffering_=1;
+ image(0);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Group.cxx b/src/Fl_Group.cxx
index 2f71c02a0..695a5c48d 100644
--- a/src/Fl_Group.cxx
+++ b/src/Fl_Group.cxx
@@ -28,6 +28,10 @@
#include <FL/fl_draw.H>
#include <stdlib.h>
+#include <FL/Fl_Input_Choice.H>
+#include <FL/Fl_Spinner.H>
+
+
Fl_Group* Fl_Group::current_;
// Hack: A single child is stored in the pointer to the array, while
@@ -823,6 +827,53 @@ void Fl_Group::draw_outside_label(const Fl_Widget& widget) const {
widget.draw_label(X,Y,W,H,(Fl_Align)a);
}
+
+Fl_Input_Choice::Fl_Input_Choice (int X,int Y,int W,int H,const char*L)
+: Fl_Group(X,Y,W,H,L)
+{
+ Fl_Group::box(FL_DOWN_BOX);
+ align(FL_ALIGN_LEFT); // default like Fl_Input
+ inp_ = new Fl_Input(inp_x(), inp_y(),
+ inp_w(), inp_h());
+ inp_->callback(inp_cb, (void*)this);
+ inp_->box(FL_FLAT_BOX); // cosmetic
+ inp_->when(FL_WHEN_CHANGED|FL_WHEN_NOT_CHANGED);
+ menu_ = new InputMenuButton(menu_x(), menu_y(),
+ menu_w(), menu_h());
+ menu_->callback(menu_cb, (void*)this);
+ menu_->box(FL_FLAT_BOX); // cosmetic
+ end();
+}
+
+
+Fl_Spinner::Fl_Spinner(int X, int Y, int W, int H, const char *L)
+: Fl_Group(X, Y, W, H, L),
+ input_(X, Y, W - H / 2 - 2, H),
+ up_button_(X + W - H / 2 - 2, Y, H / 2 + 2, H / 2, "@-42<"),
+ down_button_(X + W - H / 2 - 2, Y + H - H / 2,
+ H / 2 + 2, H / 2, "@-42>")
+{
+ end();
+
+ value_ = 1.0;
+ minimum_ = 1.0;
+ maximum_ = 100.0;
+ step_ = 1.0;
+ format_ = "%g";
+
+ align(FL_ALIGN_LEFT);
+
+ input_.value("1");
+ input_.type(FL_INT_INPUT);
+ input_.when(FL_WHEN_ENTER_KEY | FL_WHEN_RELEASE);
+ input_.callback((Fl_Callback *)sb_cb, this);
+
+ up_button_.callback((Fl_Callback *)sb_cb, this);
+
+ down_button_.callback((Fl_Callback *)sb_cb, this);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Input.cxx b/src/Fl_Input.cxx
index afd91e74c..92fb64b05 100644
--- a/src/Fl_Input.cxx
+++ b/src/Fl_Input.cxx
@@ -31,14 +31,12 @@
#include <FL/fl_ask.H>
#include "flstring.h"
-#if defined(FL_DLL) // really needed for c'tors for MS VC++ only
#include <FL/Fl_Float_Input.H>
#include <FL/Fl_Int_Input.H>
#include <FL/Fl_Multiline_Input.H>
#include <FL/Fl_Output.H>
#include <FL/Fl_Multiline_Output.H>
#include <FL/Fl_Secret_Input.H>
-#endif
#ifdef HAVE_LOCALE_H
# include <locale.h>
@@ -763,50 +761,43 @@ Fl_Input::Fl_Input(int X, int Y, int W, int H, const char *l)
: Fl_Input_(X, Y, W, H, l) {
}
-/*
- The following constructors must not be in the header file(s) if we
- build a shared object (DLL). Instead they are defined here to force
- the constructor (and default destructor as well) to be defined in
- the DLL and exported (STR #2632).
-
- Note: if you change any of them, do the same changes in the specific
- header file as well. This redundant definition was chosen to enable
- inline constructors in the header files (for static linking) as well
- as those here for dynamic linking (Windows DLL).
-*/
-#if defined(FL_DLL)
Fl_Float_Input::Fl_Float_Input(int X,int Y,int W,int H,const char *l)
- : Fl_Input(X,Y,W,H,l) {
+: Fl_Input(X,Y,W,H,l)
+{
type(FL_FLOAT_INPUT);
}
+
Fl_Int_Input::Fl_Int_Input(int X,int Y,int W,int H,const char *l)
- : Fl_Input(X,Y,W,H,l) {
+: Fl_Input(X,Y,W,H,l) {
type(FL_INT_INPUT);
}
+
Fl_Multiline_Input::Fl_Multiline_Input(int X,int Y,int W,int H,const char *l)
- : Fl_Input(X,Y,W,H,l) {
+: Fl_Input(X,Y,W,H,l) {
type(FL_MULTILINE_INPUT);
}
+
Fl_Output::Fl_Output(int X,int Y,int W,int H, const char *l)
- : Fl_Input(X, Y, W, H, l) {
+: Fl_Input(X, Y, W, H, l) {
type(FL_NORMAL_OUTPUT);
}
+
Fl_Multiline_Output::Fl_Multiline_Output(int X,int Y,int W,int H,const char *l)
- : Fl_Output(X,Y,W,H,l) {
+: Fl_Output(X,Y,W,H,l) {
type(FL_MULTILINE_OUTPUT);
}
+
Fl_Secret_Input::Fl_Secret_Input(int X,int Y,int W,int H,const char *l)
- : Fl_Input(X,Y,W,H,l) {
+: Fl_Input(X,Y,W,H,l) {
type(FL_SECRET_INPUT);
}
-#endif // FL_DLL
//
// End of "$Id$".
diff --git a/src/Fl_Light_Button.cxx b/src/Fl_Light_Button.cxx
index f89da1182..b2a6cee09 100644
--- a/src/Fl_Light_Button.cxx
+++ b/src/Fl_Light_Button.cxx
@@ -25,6 +25,7 @@
#include <FL/Fl.H>
#include <FL/Fl_Light_Button.H>
+#include <FL/Fl_Radio_Light_Button.H>
#include <FL/fl_draw.H>
#include "flstring.h"
@@ -160,6 +161,14 @@ Fl_Light_Button::Fl_Light_Button(int X, int Y, int W, int H, const char* l)
align(FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
}
+
+Fl_Radio_Light_Button::Fl_Radio_Light_Button(int X,int Y,int W,int H,const char *l)
+: Fl_Light_Button(X,Y,W,H,l)
+{
+ type(FL_RADIO_BUTTON);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Menu_Bar.cxx b/src/Fl_Menu_Bar.cxx
index 31b1b24f1..3bf1a8f8d 100644
--- a/src/Fl_Menu_Bar.cxx
+++ b/src/Fl_Menu_Bar.cxx
@@ -64,6 +64,12 @@ int Fl_Menu_Bar::handle(int event) {
return 0;
}
+
+Fl_Menu_Bar::Fl_Menu_Bar(int X, int Y, int W, int H,const char *l)
+: Fl_Menu_(X,Y,W,H,l)
+{
+}
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Menu_Window.cxx b/src/Fl_Menu_Window.cxx
index 9677b578f..28e121d0a 100644
--- a/src/Fl_Menu_Window.cxx
+++ b/src/Fl_Menu_Window.cxx
@@ -96,6 +96,20 @@ Fl_Menu_Window::~Fl_Menu_Window() {
hide();
}
+
+Fl_Menu_Window::Fl_Menu_Window(int W, int H, const char *l)
+: Fl_Single_Window(W,H,l)
+{
+ image(0);
+}
+
+
+Fl_Menu_Window::Fl_Menu_Window(int X, int Y, int W, int H, const char *l)
+: Fl_Single_Window(X,Y,W,H,l) {
+ image(0);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Repeat_Button.cxx b/src/Fl_Repeat_Button.cxx
index 94e6927a7..874a126e4 100644
--- a/src/Fl_Repeat_Button.cxx
+++ b/src/Fl_Repeat_Button.cxx
@@ -56,6 +56,13 @@ int Fl_Repeat_Button::handle(int event) {
}
}
+
+Fl_Repeat_Button::Fl_Repeat_Button(int X,int Y,int W,int H,const char *l)
+: Fl_Button(X,Y,W,H,l)
+{
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Return_Button.cxx b/src/Fl_Return_Button.cxx
index 7ec0ba98b..9e144b8ec 100644
--- a/src/Fl_Return_Button.cxx
+++ b/src/Fl_Return_Button.cxx
@@ -59,6 +59,13 @@ int Fl_Return_Button::handle(int event) {
return Fl_Button::handle(event);
}
+
+Fl_Return_Button::Fl_Return_Button(int X, int Y, int W, int H,const char *l)
+: Fl_Button(X,Y,W,H,l)
+{
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Round_Button.cxx b/src/Fl_Round_Button.cxx
index 4ca7f2ba7..d3ba77e22 100644
--- a/src/Fl_Round_Button.cxx
+++ b/src/Fl_Round_Button.cxx
@@ -22,6 +22,7 @@
#include <FL/Fl.H>
#include <FL/Fl_Round_Button.H>
+#include <FL/Fl_Radio_Round_Button.H>
/**
Creates a new Fl_Round_Button widget using the given
@@ -34,6 +35,14 @@ Fl_Round_Button::Fl_Round_Button(int X,int Y,int W,int H, const char *l)
selection_color(FL_FOREGROUND_COLOR);
}
+
+Fl_Radio_Round_Button::Fl_Radio_Round_Button(int X,int Y,int W,int H,const char *L)
+: Fl_Round_Button(X,Y,W,H,L)
+{
+ type(FL_RADIO_BUTTON);
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Single_Window.cxx b/src/Fl_Single_Window.cxx
index 3f5b55aeb..fd871a3b8 100644
--- a/src/Fl_Single_Window.cxx
+++ b/src/Fl_Single_Window.cxx
@@ -24,8 +24,30 @@
#include <FL/Fl_Single_Window.H>
-void Fl_Single_Window::show() {Fl_Window::show();}
-void Fl_Single_Window::flush() {Fl_Window::flush();}
+
+void Fl_Single_Window::show()
+{
+ Fl_Window::show();
+}
+
+
+void Fl_Single_Window::flush()
+{
+ Fl_Window::flush();
+}
+
+
+Fl_Single_Window::Fl_Single_Window(int W, int H, const char *l)
+: Fl_Window(W,H,l)
+{
+}
+
+
+Fl_Single_Window::Fl_Single_Window(int X, int Y, int W, int H, const char *l)
+: Fl_Window(X,Y,W,H,l)
+{
+}
+
//
// End of "$Id$".
diff --git a/src/Fl_Slider.cxx b/src/Fl_Slider.cxx
index a4d47eee1..648e3ce4f 100644
--- a/src/Fl_Slider.cxx
+++ b/src/Fl_Slider.cxx
@@ -18,13 +18,15 @@
#include <FL/Fl.H>
#include <FL/Fl_Slider.H>
+#include <FL/Fl_Fill_Slider.H>
+#include <FL/Fl_Hor_Slider.H>
+#include <FL/Fl_Hor_Fill_Slider.H>
+#include <FL/Fl_Hor_Nice_Slider.H>
+#include <FL/Fl_Nice_Slider.H>
#include <FL/fl_draw.H>
#include <math.h>
#include "flstring.h"
-#if defined(FL_DLL) // really needed for c'tors for MS VC++ only
-#include <FL/Fl_Hor_Slider.H>
-#endif
void Fl_Slider::_Fl_Slider() {
slider_size_ = 0;
@@ -359,24 +361,41 @@ int Fl_Slider::handle(int event) {
h()-Fl::box_dh(box()));
}
-/*
- The following constructor must not be in the header file if we
- build a shared object (DLL). Instead it is defined here to force
- the constructor (and default destructor as well) to be defined
- in the DLL and exported (STR #2632).
-
- Note: if you the ctor here, do the same changes in the specific
- header file as well. This redundant definition was chosen to enable
- inline constructors in the header files (for static linking) as well
- as the one here for dynamic linking (Windows DLL).
-*/
-#if defined(FL_DLL)
+Fl_Fill_Slider::Fl_Fill_Slider(int X,int Y,int W,int H,const char *L)
+: Fl_Slider(X,Y,W,H,L)
+{
+ type(FL_VERT_FILL_SLIDER);
+}
+
Fl_Hor_Slider::Fl_Hor_Slider(int X,int Y,int W,int H,const char *l)
- : Fl_Slider(X,Y,W,H,l) {type(FL_HOR_SLIDER);}
+: Fl_Slider(X,Y,W,H,l) {
+ type(FL_HOR_SLIDER);
+}
+
+
+Fl_Hor_Fill_Slider::Fl_Hor_Fill_Slider(int X,int Y,int W,int H,const char *L)
+: Fl_Slider(X,Y,W,H,L)
+{
+ type(FL_HOR_FILL_SLIDER);
+}
+
+
+Fl_Hor_Nice_Slider::Fl_Hor_Nice_Slider(int X,int Y,int W,int H,const char *L)
+: Fl_Slider(X,Y,W,H,L)
+{
+ type(FL_HOR_NICE_SLIDER);
+ box(FL_FLAT_BOX);
+}
+
+
+Fl_Nice_Slider::Fl_Nice_Slider(int X,int Y,int W,int H,const char *L)
+: Fl_Slider(X,Y,W,H,L) {
+ type(FL_VERT_NICE_SLIDER);
+ box(FL_FLAT_BOX);
+}
-#endif // FL_DLL
//
// End of "$Id$".
diff --git a/src/Fl_Sys_Menu_Bar.cxx b/src/Fl_Sys_Menu_Bar.cxx
index 7a161cbc2..b3ed78073 100644
--- a/src/Fl_Sys_Menu_Bar.cxx
+++ b/src/Fl_Sys_Menu_Bar.cxx
@@ -273,6 +273,15 @@ void Fl_Sys_Menu_Bar::replace(int rank, const char *name)
void Fl_Sys_Menu_Bar::draw() {
}
+
+Fl_Sys_Menu_Bar::Fl_Sys_Menu_Bar(int x,int y,int w,int h,const char *l)
+: Fl_Menu_Bar(x,y,w,h,l)
+{
+ deactivate(); // don't let the old area take events
+ fl_sys_menu_bar = this;
+}
+
+
#endif /* __APPLE__ */
//
diff --git a/src/Fl_Tile.cxx b/src/Fl_Tile.cxx
index 9ac184df6..f89edcdbc 100644
--- a/src/Fl_Tile.cxx
+++ b/src/Fl_Tile.cxx
@@ -200,6 +200,13 @@ int Fl_Tile::handle(int event) {
return Fl_Group::handle(event);
}
+
+Fl_Tile::Fl_Tile(int X,int Y,int W,int H,const char*l)
+: Fl_Group(X,Y,W,H,l)
+{
+}
+
+
//
// End of "$Id$".
//
diff --git a/src/Fl_Value_Slider.cxx b/src/Fl_Value_Slider.cxx
index 2774f8428..ac06271cc 100644
--- a/src/Fl_Value_Slider.cxx
+++ b/src/Fl_Value_Slider.cxx
@@ -18,6 +18,7 @@
#include <FL/Fl.H>
#include <FL/Fl_Value_Slider.H>
+#include <FL/Fl_Hor_Value_Slider.H>
#include <FL/fl_draw.H>
#include <math.h>
@@ -72,6 +73,13 @@ int Fl_Value_Slider::handle(int event) {
shh-Fl::box_dh(box()));
}
+
+Fl_Hor_Value_Slider::Fl_Hor_Value_Slider(int X,int Y,int W,int H,const char *l)
+: Fl_Value_Slider(X,Y,W,H,l) {
+ type(FL_HOR_SLIDER);
+}
+
+
//
// End of "$Id$".
//