[gtkmm/use-dllexport-3-24: 3/4] gdk/src/*.hg: Mark classes and functions with GDKMM_API



commit 0574fdc0d07a9fcd92d6153bbac11ad510210753
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Fri Apr 10 18:30:28 2020 +0800

    gdk/src/*.hg: Mark classes and functions with GDKMM_API
    
    Mark all the classes and methods/functions (if applicable) with
    GDKMM_API so that we can use it to export symbols, if gmmproc is new
    enough to apply GDKMM_API to the _WRAP_ENUM, _WRAP_GERROR and _CLASS_*
    items.
    
    The check on whether gmmproc is new enough will be in an upcoming
    commit.

 gdk/src/applaunchcontext.hg    |  4 ++--
 gdk/src/color.hg               |  4 ++--
 gdk/src/cursor.hg              |  6 +++---
 gdk/src/device.hg              | 22 +++++++++++-----------
 gdk/src/devicemanager.hg       |  4 ++--
 gdk/src/display.hg             | 14 +++++++-------
 gdk/src/displaymanager.hg      |  4 ++--
 gdk/src/dragcontext.hg         |  8 ++++----
 gdk/src/drawingcontext.hg      |  8 +++++---
 gdk/src/event.hg               | 11 ++++++-----
 gdk/src/frameclock.hg          |  6 +++---
 gdk/src/frametimings.hg        |  6 ++++--
 gdk/src/glcontext.hg           |  6 +++---
 gdk/src/monitor.hg             |  8 ++++----
 gdk/src/pixbuf.hg              | 16 ++++++++--------
 gdk/src/pixbufanimation.hg     |  4 ++--
 gdk/src/pixbufanimationiter.hg |  4 ++--
 gdk/src/pixbufformat.hg        |  4 ++--
 gdk/src/pixbufloader.hg        |  4 ++--
 gdk/src/rectangle.hg           |  9 +++++++--
 gdk/src/rgba.hg                |  6 ++++--
 gdk/src/screen.hg              | 10 +++++-----
 gdk/src/seat.hg                | 10 +++++-----
 gdk/src/timecoord.hg           |  4 +++-
 gdk/src/types.hg               | 22 ++++++++++++----------
 gdk/src/visual.hg              |  8 ++++----
 gdk/src/window.hg              | 38 +++++++++++++++++++-------------------
 27 files changed, 133 insertions(+), 117 deletions(-)
---
diff --git a/gdk/src/applaunchcontext.hg b/gdk/src/applaunchcontext.hg
index a614f378..05e96af7 100644
--- a/gdk/src/applaunchcontext.hg
+++ b/gdk/src/applaunchcontext.hg
@@ -31,9 +31,9 @@ namespace Gdk
  *
  * @newin{3,4}
  */
-class AppLaunchContext : public Gio::AppLaunchContext
+class GDKMM_API AppLaunchContext : public Gio::AppLaunchContext
 {
-  _CLASS_GOBJECT(AppLaunchContext, GdkAppLaunchContext, GDK_APP_LAUNCH_CONTEXT, Gio::AppLaunchContext, 
GAppLaunchContext)
+  _CLASS_GOBJECT(AppLaunchContext, GdkAppLaunchContext, GDK_APP_LAUNCH_CONTEXT, Gio::AppLaunchContext, 
GAppLaunchContext, , , GDKMM_API)
 
 protected:
   _CTOR_DEFAULT()
diff --git a/gdk/src/color.hg b/gdk/src/color.hg
index 75b074f4..8ae45ba9 100644
--- a/gdk/src/color.hg
+++ b/gdk/src/color.hg
@@ -44,9 +44,9 @@ namespace Gdk
  *
  * @deprecated Use Gdk::RGBA instead.
  */
-class Color
+class GDKMM_API Color
 {
-  _CLASS_BOXEDTYPE(Color, GdkColor, NONE, gdk_color_copy, gdk_color_free)
+  _CLASS_BOXEDTYPE(Color, GdkColor, NONE, gdk_color_copy, gdk_color_free, GDKMM_API)
   _IS_DEPRECATED
 public:
 
diff --git a/gdk/src/cursor.hg b/gdk/src/cursor.hg
index fd96b2c1..a12e0e5c 100644
--- a/gdk/src/cursor.hg
+++ b/gdk/src/cursor.hg
@@ -26,13 +26,13 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-_WRAP_ENUM(CursorType, GdkCursorType)
+_WRAP_ENUM(CursorType, GdkCursorType, decl_prefix GDKMM_API)
 
 /** This represents a cursor.
  */
-class Cursor : public Glib::Object
+class GDKMM_API Cursor : public Glib::Object
 {
-  _CLASS_GOBJECT(Cursor, GdkCursor, GDK_CURSOR, Glib::Object, GObject)
+  _CLASS_GOBJECT(Cursor, GdkCursor, GDK_CURSOR, Glib::Object, GObject, , , GDKMM_API)
   _DO_NOT_DERIVE_GTYPE //We use DO_NOT_DERIVE_GTYPE because glib does not allow us to derive from a 
non-fundamental (abstract) type, for some reason.
   _IGNORE(gdk_cursor_ref, gdk_cursor_unref) //deprecated
 
diff --git a/gdk/src/device.hg b/gdk/src/device.hg
index 95aa1785..64f67338 100644
--- a/gdk/src/device.hg
+++ b/gdk/src/device.hg
@@ -31,22 +31,22 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-_WRAP_ENUM(EventMask, GdkEventMask)
-_WRAP_ENUM(InputMode, GdkInputMode)
-_WRAP_ENUM(InputSource, GdkInputSource)
-_WRAP_ENUM(DeviceType, GdkDeviceType)
-_WRAP_ENUM(GrabOwnership, GdkGrabOwnership)
-_WRAP_ENUM(GrabStatus, GdkGrabStatus)
+_WRAP_ENUM(EventMask, GdkEventMask, decl_prefix GDKMM_API)
+_WRAP_ENUM(InputMode, GdkInputMode, decl_prefix GDKMM_API)
+_WRAP_ENUM(InputSource, GdkInputSource, decl_prefix GDKMM_API)
+_WRAP_ENUM(DeviceType, GdkDeviceType, decl_prefix GDKMM_API)
+_WRAP_ENUM(GrabOwnership, GdkGrabOwnership, decl_prefix GDKMM_API)
+_WRAP_ENUM(GrabStatus, GdkGrabStatus, decl_prefix GDKMM_API)
 
-class Display;
-class Seat;
-class Window;
+class GDKMM_API Display;
+class GDKMM_API Seat;
+class GDKMM_API Window;
 
 /** A Gdk::Device instance contains a detailed description of an extended input device.
  */
-class Device : public Glib::Object
+class GDKMM_API Device : public Glib::Object
 {
-  _CLASS_GOBJECT(Device,GdkDevice,GDK_DEVICE,Glib::Object,GObject)
+  _CLASS_GOBJECT(Device,GdkDevice,GDK_DEVICE,Glib::Object,GObject, , , GDKMM_API)
 
 protected:
   _CTOR_DEFAULT()
diff --git a/gdk/src/devicemanager.hg b/gdk/src/devicemanager.hg
index 1be9b4e1..4c240e4c 100644
--- a/gdk/src/devicemanager.hg
+++ b/gdk/src/devicemanager.hg
@@ -111,9 +111,9 @@ namespace Gdk
  *
  * @newin{3,0}
  */
-class DeviceManager : public Glib::Object
+class GDKMM_API DeviceManager : public Glib::Object
 {
-  _CLASS_GOBJECT(DeviceManager,GdkDeviceManager,GDK_DEVICE_MANAGER,Glib::Object,GObject)
+  _CLASS_GOBJECT(DeviceManager,GdkDeviceManager,GDK_DEVICE_MANAGER,Glib::Object,GObject, , , GDKMM_API)
 
 protected:
   _CTOR_DEFAULT()
diff --git a/gdk/src/display.hg b/gdk/src/display.hg
index c3b86d8c..bc229b72 100644
--- a/gdk/src/display.hg
+++ b/gdk/src/display.hg
@@ -29,11 +29,11 @@ namespace Gdk
 
 _CC_INCLUDE(gdk/gdk.h)
 
-class Device;
-class DeviceManager;
-class Seat;
-class Monitor;
-class Window;
+class GDKMM_API Device;
+class GDKMM_API DeviceManager;
+class GDKMM_API Seat;
+class GDKMM_API Monitor;
+class GDKMM_API Window;
 
  /** Gdk::Display object's purpose is two fold:
  *   To grab/ungrab keyboard focus and mouse pointer
@@ -44,9 +44,9 @@ class Window;
  * various Gdk::Screen objects currently instantiated by the application. It is also used to grab and 
release the keyboard
  * and the mouse pointer.
  */
-class Display : public Glib::Object
+class GDKMM_API Display : public Glib::Object
 {
-  _CLASS_GOBJECT(Display,GdkDisplay,GDK_DISPLAY,Glib::Object,GObject)
+  _CLASS_GOBJECT(Display,GdkDisplay,GDK_DISPLAY,Glib::Object,GObject, , , GDKMM_API)
 protected:
   _CTOR_DEFAULT
 
diff --git a/gdk/src/displaymanager.hg b/gdk/src/displaymanager.hg
index cbe54d7d..7de8555b 100644
--- a/gdk/src/displaymanager.hg
+++ b/gdk/src/displaymanager.hg
@@ -31,9 +31,9 @@ namespace Gdk
 /** The purpose of the GdkDisplayManager singleton object is to offer notification when displays appear or 
disappear or the
  * default display changes.
  */
-class DisplayManager : public Glib::Object
+class GDKMM_API DisplayManager : public Glib::Object
 {
-  _CLASS_GOBJECT(DisplayManager,GdkDisplayManager,GDK_DISPLAY_MANAGER,Glib::Object,GObject)
+  _CLASS_GOBJECT(DisplayManager,GdkDisplayManager,GDK_DISPLAY_MANAGER,Glib::Object,GObject,,,GDKMM_API)
 protected:
 
 public:
diff --git a/gdk/src/dragcontext.hg b/gdk/src/dragcontext.hg
index 558d3a9c..e30bfb90 100644
--- a/gdk/src/dragcontext.hg
+++ b/gdk/src/dragcontext.hg
@@ -30,14 +30,14 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-_WRAP_ENUM(DragAction, GdkDragAction)
-_WRAP_ENUM(DragProtocol, GdkDragProtocol)
+_WRAP_ENUM(DragAction, GdkDragAction, decl_prefix GDKMM_API)
+_WRAP_ENUM(DragProtocol, GdkDragProtocol, decl_prefix GDKMM_API)
 
 /** A Gdk::DragContext holds information about a drag in progress. It is used on both source and destination 
sides.
  */
-class DragContext : public Glib::Object
+class GDKMM_API DragContext : public Glib::Object
 {
-  _CLASS_GOBJECT(DragContext, GdkDragContext, GDK_DRAG_CONTEXT, Glib::Object,GObject)
+  _CLASS_GOBJECT(DragContext, GdkDragContext, GDK_DRAG_CONTEXT, Glib::Object, GObject, , , GDKMM_API)
 protected:
 
 public:
diff --git a/gdk/src/drawingcontext.hg b/gdk/src/drawingcontext.hg
index 4634a1a5..3d7d847e 100644
--- a/gdk/src/drawingcontext.hg
+++ b/gdk/src/drawingcontext.hg
@@ -14,6 +14,8 @@
  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
  */
 
+_CONFIGINCLUDE(gdkmmconfig.h)
+
 #include <glibmm/object.h>
 #include <cairomm/context.h>
 #include <cairomm/region.h>
@@ -23,7 +25,7 @@ _PINCLUDE(glibmm/private/object_p.h)
 
 namespace Gdk
 {
-class Window;
+class GDKMM_API Window;
 
 /** Drawing context for GDK windows.
  *
@@ -38,9 +40,9 @@ class Window;
  *
  * @newin{3,22}
  */
-class DrawingContext : public Glib::Object
+class GDKMM_API DrawingContext : public Glib::Object
 {
-  _CLASS_GOBJECT(DrawingContext, GdkDrawingContext, GDK_DRAWING_CONTEXT, Glib::Object, GObject)
+  _CLASS_GOBJECT(DrawingContext, GdkDrawingContext, GDK_DRAWING_CONTEXT, Glib::Object, GObject, , , 
GDKMM_API)
 
 protected:
   _CTOR_DEFAULT()
diff --git a/gdk/src/event.hg b/gdk/src/event.hg
index e68ea2e5..6616fc3b 100644
--- a/gdk/src/event.hg
+++ b/gdk/src/event.hg
@@ -43,16 +43,17 @@ _WRAP_ENUM(EventType, GdkEventType,
   s#^DOUBLE_BUTTON_PRESS$##,
   s#^2BUTTON_PRESS#DOUBLE_BUTTON_PRESS#,
   s#^TRIPLE_BUTTON_PRESS$##,
-  s#^3BUTTON_PRESS#TRIPLE_BUTTON_PRESS#
+  s#^3BUTTON_PRESS#TRIPLE_BUTTON_PRESS#,
+  decl_prefix GDKMM_API
 )
 
-_WRAP_ENUM(AxisUse, GdkAxisUse)
-_WRAP_ENUM(AxisFlags, GdkAxisFlags)
+_WRAP_ENUM(AxisUse, GdkAxisUse, decl_prefix GDKMM_API)
+_WRAP_ENUM(AxisFlags, GdkAxisFlags, decl_prefix GDKMM_API)
 
 //TODO: Actually use this class instead of GdkEvent?
-class Event
+class GDKMM_API Event
 {
-  _CLASS_BOXEDTYPE(Event, GdkEvent, NONE, gdk_event_copy, gdk_event_free)
+  _CLASS_BOXEDTYPE(Event, GdkEvent, NONE, gdk_event_copy, gdk_event_free, GDKMM_API)
   _CUSTOM_STRUCT_PROTOTYPE
   _IGNORE(gdk_event_copy, gdk_event_free)
 public:
diff --git a/gdk/src/frameclock.hg b/gdk/src/frameclock.hg
index f656564e..9f3c24e1 100644
--- a/gdk/src/frameclock.hg
+++ b/gdk/src/frameclock.hg
@@ -26,7 +26,7 @@ extern "C" typedef struct _GdkFrameClock GdkFrameClock;
 
 namespace Gdk
 {
-_WRAP_ENUM(FrameClockPhase, GdkFrameClockPhase, newin "3,24")
+_WRAP_ENUM(FrameClockPhase, GdkFrameClockPhase, newin "3,24", decl_prefix GDKMM_API)
 
 /** Frame clock syncs painting to a window or display.
  *
@@ -66,9 +66,9 @@ _WRAP_ENUM(FrameClockPhase, GdkFrameClockPhase, newin "3,24")
  *
  * @newin{3,24}
  */
-class FrameClock : public Glib::Object
+class GDKMM_API FrameClock : public Glib::Object
 {
-  _CLASS_GOBJECT(FrameClock, GdkFrameClock, GDK_FRAME_CLOCK, Glib::Object, GObject)
+  _CLASS_GOBJECT(FrameClock, GdkFrameClock, GDK_FRAME_CLOCK, Glib::Object, GObject, , , GDKMM_API)
 
 public:
   _WRAP_METHOD(gint64 get_frame_time() const, gdk_frame_clock_get_frame_time)
diff --git a/gdk/src/frametimings.hg b/gdk/src/frametimings.hg
index ef286f1b..e74498ff 100644
--- a/gdk/src/frametimings.hg
+++ b/gdk/src/frametimings.hg
@@ -14,6 +14,8 @@
  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
  */
 
+_CONFIGINCLUDE(gdkmmconfig.h)
+
 _DEFS(gdkmm,gdk)
 
 #include <glibmm/refptr.h>
@@ -36,11 +38,11 @@ namespace Gdk
  *
  * @newin{3,24}
  */
-class FrameTimings final
+class GDKMM_API FrameTimings final
 {
   // GdkFrameTimings is registered as a boxed type, but it has custom
   // reference-counting instead of copy/free functions, so we use it via RefPtr.
-  _CLASS_OPAQUE_REFCOUNTED(FrameTimings, GdkFrameTimings, NONE, gdk_frame_timings_ref, 
gdk_frame_timings_unref)
+  _CLASS_OPAQUE_REFCOUNTED(FrameTimings, GdkFrameTimings, NONE, gdk_frame_timings_ref, 
gdk_frame_timings_unref,  GDKMM_API)
   _IGNORE(gdk_frame_timings_ref, gdk_frame_timings_unref)
 public:
   _WRAP_METHOD(gint64 get_frame_counter() const, gdk_frame_timings_get_frame_counter)
diff --git a/gdk/src/glcontext.hg b/gdk/src/glcontext.hg
index 9193efa2..a730ddc4 100644
--- a/gdk/src/glcontext.hg
+++ b/gdk/src/glcontext.hg
@@ -25,15 +25,15 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-_WRAP_GERROR(GLError, GdkGLError, GDK_GL_ERROR, newin "3,18")
+_WRAP_GERROR(GLError, GdkGLError, GDK_GL_ERROR, newin "3,18", decl_prefix GDKMM_API)
 
 /** A Gdk::GLContext is an OpenGL context abstraction. It's a low-level object, used to implement high-level 
objects such
  * as Gtk::GLArea on the GTK+ level.
  * @newin{3,18}
  */
-class GLContext : public Glib::Object
+class GDKMM_API GLContext : public Glib::Object
 {
-  _CLASS_GOBJECT(GLContext,GdkGLContext,GDK_GL_CONTEXT,Glib::Object,GObject)
+  _CLASS_GOBJECT(GLContext,GdkGLContext,GDK_GL_CONTEXT,Glib::Object,GObject, , , GDKMM_API)
 
 protected:
   _CTOR_DEFAULT
diff --git a/gdk/src/monitor.hg b/gdk/src/monitor.hg
index 953273f1..8eb4b19e 100644
--- a/gdk/src/monitor.hg
+++ b/gdk/src/monitor.hg
@@ -22,9 +22,9 @@ _PINCLUDE(glibmm/private/object_p.h)
 
 namespace Gdk
 {
-_WRAP_ENUM(SubpixelLayout, GdkSubpixelLayout)
+_WRAP_ENUM(SubpixelLayout, GdkSubpixelLayout, decl_prefix GDKMM_API)
 
-class Display;
+class GDKMM_API Display;
 
 /** Object representing an output.
  *
@@ -39,9 +39,9 @@ class Display;
  *
  * @newin{3,22}
  */
-class Monitor : public Glib::Object
+class GDKMM_API Monitor : public Glib::Object
 {
-  _CLASS_GOBJECT(Monitor, GdkMonitor, GDK_MONITOR, Glib::Object, GObject)
+  _CLASS_GOBJECT(Monitor, GdkMonitor, GDK_MONITOR, Glib::Object, GObject, , , GDKMM_API)
 
 protected:
   _CTOR_DEFAULT()
diff --git a/gdk/src/pixbuf.hg b/gdk/src/pixbuf.hg
index 4fef3ff9..d0f0cc65 100644
--- a/gdk/src/pixbuf.hg
+++ b/gdk/src/pixbuf.hg
@@ -40,23 +40,23 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-class Window;
+class GDKMM_API Window;
 
 _CC_INCLUDE(gdk-pixbuf/gdk-pixbuf.h)
-_WRAP_ENUM(Colorspace, GdkColorspace)
-_WRAP_ENUM(InterpType, GdkInterpType)
-_WRAP_ENUM(PixbufAlphaMode, GdkPixbufAlphaMode)
-_WRAP_ENUM(PixbufRotation, GdkPixbufRotation)
+_WRAP_ENUM(Colorspace, GdkColorspace, decl_prefix GDKMM_API)
+_WRAP_ENUM(InterpType, GdkInterpType, decl_prefix GDKMM_API)
+_WRAP_ENUM(PixbufAlphaMode, GdkPixbufAlphaMode, decl_prefix GDKMM_API)
+_WRAP_ENUM(PixbufRotation, GdkPixbufRotation, decl_prefix GDKMM_API)
 
 /** Exception class for Gdk::Pixbuf errors.
  */
-_WRAP_GERROR(PixbufError,GdkPixbufError,GDK_PIXBUF_ERROR)
+_WRAP_GERROR(PixbufError,GdkPixbufError,GDK_PIXBUF_ERROR, decl_prefix GDKMM_API)
 
-class Pixbuf
+class GDKMM_API Pixbuf
   : public Glib::Object,
     public Gio::Icon
 {
-  _CLASS_GOBJECT(Pixbuf, GdkPixbuf, GDK_PIXBUF, Glib::Object, GObject)
+  _CLASS_GOBJECT(Pixbuf, GdkPixbuf, GDK_PIXBUF, Glib::Object, GObject, , , GDKMM_API)
   _IMPLEMENTS_INTERFACE(Gio::Icon)
   _IGNORE(gdk_pixbuf_ref, gdk_pixbuf_unref,  gdk_pixbuf_non_anim_new)
 
diff --git a/gdk/src/pixbufanimation.hg b/gdk/src/pixbufanimation.hg
index 4eb5eced..cd6b2f80 100644
--- a/gdk/src/pixbufanimation.hg
+++ b/gdk/src/pixbufanimation.hg
@@ -35,9 +35,9 @@ namespace Gdk
  * To display an animation you don't need to understand its representation, however; you just ask
  * gdk-pixbuf what should be displayed at a given point in time.
  */
-class PixbufAnimation : public Glib::Object
+class GDKMM_API PixbufAnimation : public Glib::Object
 {
-  _CLASS_GOBJECT(PixbufAnimation, GdkPixbufAnimation, GDK_PIXBUF_ANIMATION, Glib::Object, GObject)
+  _CLASS_GOBJECT(PixbufAnimation, GdkPixbufAnimation, GDK_PIXBUF_ANIMATION, Glib::Object, GObject, , , 
GDKMM_API)
   _IGNORE(gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref)
 protected:
 
diff --git a/gdk/src/pixbufanimationiter.hg b/gdk/src/pixbufanimationiter.hg
index 1d38c048..6ff7d288 100644
--- a/gdk/src/pixbufanimationiter.hg
+++ b/gdk/src/pixbufanimationiter.hg
@@ -31,9 +31,9 @@ namespace Gdk
 
 /** An iterator which points to a certain position in a PixbufAnimation.
  */
-class PixbufAnimationIter : public Glib::Object
+class GDKMM_API PixbufAnimationIter : public Glib::Object
 {
-  _CLASS_GOBJECT(PixbufAnimationIter, GdkPixbufAnimationIter, GDK_PIXBUF_ANIMATION_ITER, Glib::Object, 
GObject)
+  _CLASS_GOBJECT(PixbufAnimationIter, GdkPixbufAnimationIter, GDK_PIXBUF_ANIMATION_ITER, Glib::Object, 
GObject, , , GDKMM_API)
 protected:
 
   //A constructor (if any) would go here, protected.
diff --git a/gdk/src/pixbufformat.hg b/gdk/src/pixbufformat.hg
index 650ebf03..497e5f76 100644
--- a/gdk/src/pixbufformat.hg
+++ b/gdk/src/pixbufformat.hg
@@ -24,9 +24,9 @@ _DEFS(gdkmm,gdk)
 namespace Gdk
 {
 
-class PixbufFormat
+class GDKMM_API PixbufFormat
 {
-  _CLASS_BOXEDTYPE(PixbufFormat, GdkPixbufFormat, NONE, gdk_pixbuf_format_copy, gdk_pixbuf_format_free)
+  _CLASS_BOXEDTYPE(PixbufFormat, GdkPixbufFormat, NONE, gdk_pixbuf_format_copy, gdk_pixbuf_format_free,  
GDKMM_API)
   _IGNORE(gdk_pixbuf_format_copy, gdk_pixbuf_format_free)
 
 public:
diff --git a/gdk/src/pixbufloader.hg b/gdk/src/pixbufloader.hg
index 3963e954..5de7e553 100644
--- a/gdk/src/pixbufloader.hg
+++ b/gdk/src/pixbufloader.hg
@@ -27,9 +27,9 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-class PixbufLoader : public Glib::Object
+class GDKMM_API PixbufLoader : public Glib::Object
 {
-  _CLASS_GOBJECT(PixbufLoader, GdkPixbufLoader, GDK_PIXBUF_LOADER, Glib::Object, GObject)
+  _CLASS_GOBJECT(PixbufLoader, GdkPixbufLoader, GDK_PIXBUF_LOADER, Glib::Object, GObject, , , GDKMM_API)
 protected:
 
   /** Constructs a pixbuf loader object.
diff --git a/gdk/src/rectangle.hg b/gdk/src/rectangle.hg
index f77fb0b6..72c572b9 100644
--- a/gdk/src/rectangle.hg
+++ b/gdk/src/rectangle.hg
@@ -16,6 +16,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+_CONFIGINCLUDE(gdkmmconfig.h)
+
 #include <glibmm/value.h>
 #include <gdk/gdk.h>
 
@@ -28,9 +30,9 @@ namespace Gdk
  * The intersection of two rectangles can be computed with intersect().
  * To find the union of two rectangles use join().
  */
-class Rectangle
+class GDKMM_API Rectangle
 {
-  _CLASS_BOXEDTYPE_STATIC(Rectangle, GdkRectangle)
+  _CLASS_BOXEDTYPE_STATIC(Rectangle, GdkRectangle, GDKMM_API)
 public:
 
   /** Creates a new rectangle instance with these dimensions.
@@ -117,6 +119,7 @@ public:
  *
  * @relates Gdk::Rectangle
  */
+GDKMM_API
 Rectangle join(const Rectangle& src1, const Rectangle& src2);
 
 /** Calculates the intersection of two rectangles.
@@ -131,6 +134,7 @@ Rectangle join(const Rectangle& src1, const Rectangle& src2);
  *
  * @relates Gdk::Rectangle
  */
+GDKMM_API
 Rectangle intersect(const Rectangle& src1, const Rectangle& src2);
 
 /** Calculates the intersection of two rectangles.
@@ -147,6 +151,7 @@ Rectangle intersect(const Rectangle& src1, const Rectangle& src2);
  *
  * @relates Gdk::Rectangle
  */
+GDKMM_API
 Rectangle intersect(const Rectangle& src1, const Rectangle& src2, bool& rectangles_intersect);
 
 } // namespace Gdk
diff --git a/gdk/src/rgba.hg b/gdk/src/rgba.hg
index 566395b1..1904d568 100644
--- a/gdk/src/rgba.hg
+++ b/gdk/src/rgba.hg
@@ -16,6 +16,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+_CONFIGINCLUDE(gdkmmconfig.h)
+
 #include <glibmm/value.h>
 #include <gdk/gdk.h> //Needed for our RGBATraits here.
 
@@ -31,9 +33,9 @@ namespace Gdk
  * So the color (0.0, 0.0, 0.0, 0.0) represents transparent black and (1.0, 1.0, 1.0, 1.0) is opaque white.
  * Other values will be clamped to this range when drawing.
  */
-class RGBA
+class GDKMM_API RGBA
 {
-  _CLASS_BOXEDTYPE(RGBA, GdkRGBA, NONE, gdk_rgba_copy, gdk_rgba_free)
+  _CLASS_BOXEDTYPE(RGBA, GdkRGBA, NONE, gdk_rgba_copy, gdk_rgba_free, GDKMM_API)
   _IGNORE(gdk_rgba_copy, gdk_rgba_free)
 public:
 
diff --git a/gdk/src/screen.hg b/gdk/src/screen.hg
index 5e12ce02..5e37b0bb 100644
--- a/gdk/src/screen.hg
+++ b/gdk/src/screen.hg
@@ -26,9 +26,9 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-class Display;
-class Visual;
-class Window;
+class GDKMM_API Display;
+class GDKMM_API Visual;
+class GDKMM_API Window;
 
 /** Object representing a physical screen
  * Gdk::Screen objects are the GDK representation of a physical screen. It is used throughout GDK and GTK+ 
to specify
@@ -36,9 +36,9 @@ class Window;
  * default settings such as the screen width (get_width()), etc.
  * Note that a screen may consist of multiple monitors which are merged to form a large screen area.
  */
-class Screen : public Glib::Object
+class GDKMM_API Screen : public Glib::Object
 {
-  _CLASS_GOBJECT(Screen,GdkScreen,GDK_SCREEN,Glib::Object,GObject)
+  _CLASS_GOBJECT(Screen,GdkScreen,GDK_SCREEN,Glib::Object,GObject, , , GDKMM_API)
 protected:
 
 public:
diff --git a/gdk/src/seat.hg b/gdk/src/seat.hg
index 191cd353..a4f916e7 100644
--- a/gdk/src/seat.hg
+++ b/gdk/src/seat.hg
@@ -24,18 +24,18 @@ _PINCLUDE(glibmm/private/object_p.h)
 
 namespace Gdk
 {
-_WRAP_ENUM(SeatCapabilities, GdkSeatCapabilities)
+_WRAP_ENUM(SeatCapabilities, GdkSeatCapabilities, decl_prefix GDKMM_API)
 
-class Display;
-class Window;
+class GDKMM_API Display;
+class GDKMM_API Window;
 
 /** A Gdk::Seat object represents a collection of input devices that belong to a user.
  *
  * @newin{3,20}
  */
-class Seat : public Glib::Object
+class GDKMM_API Seat : public Glib::Object
 {
-  _CLASS_GOBJECT(Seat, GdkSeat, GDK_SEAT, Glib::Object, GObject)
+  _CLASS_GOBJECT(Seat, GdkSeat, GDK_SEAT, Glib::Object, GObject, , , GDKMM_API)
 
 protected:
   _CTOR_DEFAULT()
diff --git a/gdk/src/timecoord.hg b/gdk/src/timecoord.hg
index 6944e483..cb8e0144 100644
--- a/gdk/src/timecoord.hg
+++ b/gdk/src/timecoord.hg
@@ -15,6 +15,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+_CONFIGINCLUDE(gdkmmconfig.h)
+
 #include <gdk/gdk.h>
 
 _DEFS(gdkmm,gdk)
@@ -25,7 +27,7 @@ namespace Gdk
 /** A Gdk::TimeCoord instance contains a single event of motion history.
  * You shouldn't be using it as a standalone object.
  */
-class TimeCoord
+class GDKMM_API TimeCoord
 {
   _CLASS_GENERIC(TimeCoord, GdkTimeCoord)
 public:
diff --git a/gdk/src/types.hg b/gdk/src/types.hg
index 7cb7d6a6..a34e7e5f 100644
--- a/gdk/src/types.hg
+++ b/gdk/src/types.hg
@@ -52,20 +52,20 @@ enum { ERROR = GTKMM_MACRO_DEFINITION_ERROR };
 namespace Gdk
 {
 
-class Window;
-class Font;
-class Color;
+class GDKMM_API Window;
+class GDKMM_API Font;
+class GDKMM_API Color;
 
-_WRAP_ENUM(ByteOrder, GdkByteOrder)
-_WRAP_ENUM(ModifierType, GdkModifierType)
-_WRAP_ENUM(ModifierIntent, GdkModifierIntent)
-_WRAP_ENUM(Status, GdkStatus)
+_WRAP_ENUM(ByteOrder, GdkByteOrder, decl_prefix GDKMM_API)
+_WRAP_ENUM(ModifierType, GdkModifierType, decl_prefix GDKMM_API)
+_WRAP_ENUM(ModifierIntent, GdkModifierIntent, decl_prefix GDKMM_API)
+_WRAP_ENUM(Status, GdkStatus, decl_prefix GDKMM_API)
 
 typedef GdkGeometry Geometry; //It's not used enough to justify having a wrapper.
 
 /** This is a simple structure containing an x and y coordinate of a point.
  */
-class Point
+class GDKMM_API Point
 {
   _CLASS_GENERIC(Point, GdkPoint)
 
@@ -117,7 +117,7 @@ struct PointTraits
   static CppType to_cpp_type    (CType c_obj)            { return CppType (c_obj.x, c_obj.y); }
 };
 
-struct AtomStringTraits
+struct GDKMM_API AtomStringTraits
 {
   typedef std::string CppType;
   typedef GdkAtom     CType;
@@ -137,7 +137,7 @@ struct AtomStringTraits
 // a utility function. -Bryan
 typedef AtomStringTraits AtomString;
 
-struct AtomUstringTraits
+struct GDKMM_API AtomUstringTraits
 {
   typedef Glib::ustring CppType;
   typedef GdkAtom     CType;
@@ -162,9 +162,11 @@ namespace Glib
 {
 
 /** @relates Gdk::Point */
+GDKMM_API
 Gdk::Point& wrap(GdkPoint* object);
 
 /** @relates Gdk::Point */
+GDKMM_API
 const Gdk::Point& wrap(const GdkPoint* object);
 
 } // namespace Glib
diff --git a/gdk/src/visual.hg b/gdk/src/visual.hg
index 579b45b6..cf72057c 100644
--- a/gdk/src/visual.hg
+++ b/gdk/src/visual.hg
@@ -29,9 +29,9 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-class Screen;
+class GDKMM_API Screen;
 
-_WRAP_ENUM(VisualType, GdkVisualType)
+_WRAP_ENUM(VisualType, GdkVisualType, , , decl_prefix GDKMM_API)
 
 /** A Gdk::Visual describes a particular video hardware display format.
  * It includes information about the number of bits used for each color, the way the bits are translated 
into an RGB value
@@ -48,9 +48,9 @@ _WRAP_ENUM(VisualType, GdkVisualType)
  * GDK_VISUAL_TRUE_COLOR, GDK_VISUAL_PSEUDO_COLOR, GDK_VISUAL_STATIC_COLOR, GDK_VISUAL_GRAYSCALE, then
  * GDK_VISUAL_STATIC_GRAY.
  */
-class Visual : public Glib::Object
+class GDKMM_API Visual : public Glib::Object
 {
-  _CLASS_GOBJECT(Visual,GdkVisual,GDK_VISUAL,Glib::Object,GObject)
+  _CLASS_GOBJECT(Visual,GdkVisual,GDK_VISUAL,Glib::Object,GObject, , , GDKMM_API)
 protected:
 
   _CTOR_DEFAULT
diff --git a/gdk/src/window.hg b/gdk/src/window.hg
index 2162d805..6aff414c 100644
--- a/gdk/src/window.hg
+++ b/gdk/src/window.hg
@@ -34,32 +34,32 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Gdk
 {
 
-_WRAP_ENUM(WindowState, GdkWindowState)
-_WRAP_ENUM(WindowType, GdkWindowType)
-_WRAP_ENUM(WindowAttributesType, GdkWindowAttributesType)
-_WRAP_ENUM(WindowHints, GdkWindowHints)
-_WRAP_ENUM(WindowTypeHint, GdkWindowTypeHint)
-_WRAP_ENUM(WMDecoration, GdkWMDecoration)
-_WRAP_ENUM(WMFunction, GdkWMFunction)
-_WRAP_ENUM(WindowEdge, GdkWindowEdge)
-_WRAP_ENUM(Gravity, GdkGravity)
-_WRAP_ENUM(AnchorHints, GdkAnchorHints)
-_WRAP_ENUM(FullscreenMode, GdkFullscreenMode)
-
-class Cursor;
-class Pixbuf;
-class GLContext;
-class DrawingContext;
-class FrameClock;
+_WRAP_ENUM(WindowState, GdkWindowState, decl_prefix GDKMM_API)
+_WRAP_ENUM(WindowType, GdkWindowType, decl_prefix GDKMM_API)
+_WRAP_ENUM(WindowAttributesType, GdkWindowAttributesType, decl_prefix GDKMM_API)
+_WRAP_ENUM(WindowHints, GdkWindowHints, decl_prefix GDKMM_API)
+_WRAP_ENUM(WindowTypeHint, GdkWindowTypeHint, decl_prefix GDKMM_API)
+_WRAP_ENUM(WMDecoration, GdkWMDecoration, decl_prefix GDKMM_API)
+_WRAP_ENUM(WMFunction, GdkWMFunction, decl_prefix GDKMM_API)
+_WRAP_ENUM(WindowEdge, GdkWindowEdge, decl_prefix GDKMM_API)
+_WRAP_ENUM(Gravity, GdkGravity, decl_prefix GDKMM_API)
+_WRAP_ENUM(AnchorHints, GdkAnchorHints, decl_prefix GDKMM_API)
+_WRAP_ENUM(FullscreenMode, GdkFullscreenMode, decl_prefix GDKMM_API)
+
+class GDKMM_API Cursor;
+class GDKMM_API Pixbuf;
+class GDKMM_API GLContext;
+class GDKMM_API DrawingContext;
+class GDKMM_API FrameClock;
 
 /** A Gdk::Window is a rectangular region on the screen. It's a low-level object, used to implement 
high-level objects such
  * as Gtk::Widget and Gtk::Window on the GTK+ level. A Gtk::Window is a toplevel window, the thing a user 
might think of as
  * a "window" with a titlebar and so on; a Gtk::Window may contain many Gdk::Windows. For example, each 
Gtk::Button has a
  * Gdk::Window associated with it.
  */
-class Window : public Glib::Object
+class GDKMM_API Window : public Glib::Object
 {
-  _CLASS_GOBJECT(Window, GdkWindow, GDK_WINDOW, Glib::Object, GObject)
+  _CLASS_GOBJECT(Window, GdkWindow, GDK_WINDOW, Glib::Object, GObject, , , GDKMM_API)
   _STRUCT_NOT_HIDDEN
   _IGNORE(gdk_window_destroy, gdk_window_new, gdk_window_is_destroyed)
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]