summaryrefslogtreecommitdiff
path: root/src/Fl_Slider.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'src/Fl_Slider.cxx')
-rw-r--r--src/Fl_Slider.cxx25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/Fl_Slider.cxx b/src/Fl_Slider.cxx
index 7a1e5772f..357e24581 100644
--- a/src/Fl_Slider.cxx
+++ b/src/Fl_Slider.cxx
@@ -3,7 +3,7 @@
//
// Slider widget for the Fast Light Tool Kit (FLTK).
//
-// Copyright 1998-2010 by Bill Spitzak and others.
+// Copyright 1998-2011 by Bill Spitzak and others.
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Library General Public
@@ -31,6 +31,10 @@
#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;
slider_ = 0; // FL_UP_BOX;
@@ -364,6 +368,25 @@ 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_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);}
+
+#endif // FL_DLL
+
//
// End of "$Id$".
//