[pangomm/use-dllexport: 4/7] pango/src/*.hg: Decorate classes and functions with PANGOMM_API



commit 4ee0829e1c613c68f35d46de622584803faf8492
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Wed Mar 11 18:24:09 2020 +0800

    pango/src/*.hg: Decorate classes and functions with PANGOMM_API
    
    This prepares for using compiler directives to export symbols rather
    than using gendef.exe.

 pango/src/attributes.hg      | 40 ++++++++++++++++++++++++----------------
 pango/src/attriter.hg        |  3 ++-
 pango/src/attrlist.hg        |  4 ++--
 pango/src/cairofontmap.hg    |  6 ++++--
 pango/src/color.hg           |  6 ++++--
 pango/src/context.hg         |  4 ++--
 pango/src/coverage.hg        |  6 ++++--
 pango/src/font.hg            |  6 +++---
 pango/src/fontdescription.hg |  6 ++++--
 pango/src/fontface.hg        |  4 ++--
 pango/src/fontfamily.hg      |  4 ++--
 pango/src/fontmap.hg         |  6 +++---
 pango/src/fontmetrics.hg     |  6 ++++--
 pango/src/fontset.hg         |  4 ++--
 pango/src/glyph.hg           | 18 +++++++++++++-----
 pango/src/glyphstring.hg     |  4 ++--
 pango/src/item.hg            |  7 +++++--
 pango/src/language.hg        |  6 ++++--
 pango/src/layout.hg          |  4 ++--
 pango/src/layoutiter.hg      |  4 ++--
 pango/src/layoutline.hg      |  6 +++---
 pango/src/layoutrun.hg       | 10 +++++-----
 pango/src/rectangle.hg       |  6 +++++-
 pango/src/renderer.hg        |  4 ++--
 pango/src/tabarray.hg        |  4 ++--
 25 files changed, 107 insertions(+), 71 deletions(-)
---
diff --git a/pango/src/attributes.hg b/pango/src/attributes.hg
index 76c2b4b..5c34b46 100644
--- a/pango/src/attributes.hg
+++ b/pango/src/attributes.hg
@@ -49,15 +49,15 @@ _WRAP_ENUM(Underline, PangoUnderline)
 typedef PangoLogAttr LogAttr;
 
 
-class AttrString;
-class AttrLanguage;
-class AttrColor;
-class AttrInt;
-class AttrFloat;
-class AttrFontDesc;
-class AttrShape;
+class PANGOMM_API AttrString;
+class PANGOMM_API AttrLanguage;
+class PANGOMM_API AttrColor;
+class PANGOMM_API AttrInt;
+class PANGOMM_API AttrFloat;
+class PANGOMM_API AttrFontDesc;
+class PANGOMM_API AttrShape;
 
-enum class GravityHint;
+enum class PANGOMM_API GravityHint;
 
 /** The Pango::Attribute structure represents the common portions of all attributes.
  * Particular types of attributes derive this class. It holds the range in which the
@@ -66,7 +66,7 @@ enum class GravityHint;
  * Attributed text is used in a number of places in pango. It is used as the input to
  * the itemization process and also when creating a Pango::Layout.
  */
-class Attribute
+class PANGOMM_API Attribute
 {
   _CLASS_GENERIC(Attribute, PangoAttribute)
   _IGNORE(pango_attribute_copy,pango_attribute_destroy)
@@ -333,7 +333,7 @@ inline bool operator!=(const Attribute& lhs, const Attribute& rhs)
 
 /** A Pango::AttrString is used to represent an attribute with a string value.
  */
-class AttrString : public Attribute
+class PANGOMM_API AttrString : public Attribute
 {
   _CLASS_GENERIC(AttrString, PangoAttrString)
 
@@ -364,7 +364,7 @@ public:
 
 /** A Pango::AttrLanguage is used to represent an attribute that is a language.
  */
-class AttrLanguage : public Attribute
+class PANGOMM_API AttrLanguage : public Attribute
 {
   _CLASS_GENERIC(AttrLanguage, PangoAttrLanguage)
 
@@ -395,7 +395,7 @@ public:
 
 /** A Pango::AttrColor is used to represent an attribute which is a color.
  */
-class AttrColor : public Attribute
+class PANGOMM_API AttrColor : public Attribute
 {
   _CLASS_GENERIC(AttrColor, PangoAttrColor)
 
@@ -426,7 +426,7 @@ public:
 
 /** A Pango::AttrInt is used to represent an attribute with an integer or enumeration value.
  */
-class AttrInt : public Attribute
+class PANGOMM_API AttrInt : public Attribute
 {
   _CLASS_GENERIC(AttrInt, PangoAttrInt)
 
@@ -457,7 +457,7 @@ public:
 
 /** A Pango::AttrFloat is used to represent an attribute with a float or double value.
  */
-class AttrFloat : public Attribute
+class PANGOMM_API AttrFloat : public Attribute
 {
   _CLASS_GENERIC(AttrFloat, PangoAttrFloat)
 
@@ -488,7 +488,7 @@ public:
 
 /** A Pango::AttrFontDesc is used to represent an attribute that sets all aspects of the font description at 
once.
  */
-class AttrFontDesc : public Attribute
+class PANGOMM_API AttrFontDesc : public Attribute
 {
   _CLASS_GENERIC(AttrFontDesc, PangoAttrFontDesc)
 
@@ -519,7 +519,7 @@ public:
 
 /** A Pango::AttrShape structure is used to represent an attribute which imposes shape restrictions.
  */
-class AttrShape : public Attribute
+class PANGOMM_API AttrShape : public Attribute
 {
   _CLASS_GENERIC(AttrShape, PangoAttrShape)
 
@@ -577,27 +577,35 @@ namespace Glib
 {
 
 /** @relates Pango::Attribute */
+PANGOMM_API
 Pango::Attribute wrap(PangoAttribute* object, bool take_copy = false);
 
 /** @relates Pango::AttrString */
+PANGOMM_API
 Pango::AttrString wrap(PangoAttrString* object, bool take_copy = false);
 
 /** @relates Pango::AttrLanguage */
+PANGOMM_API
 Pango::AttrLanguage wrap(PangoAttrLanguage* object, bool take_copy = false);
 
 /** @relates Pango::AttrColor */
+PANGOMM_API
 Pango::AttrColor wrap(PangoAttrColor* object, bool take_copy = false);
 
 /** @relates Pango::AttrInt */
+PANGOMM_API
 Pango::AttrInt wrap(PangoAttrInt* object, bool take_copy = false);
 
 /** @relates Pango::AttrFloat */
+PANGOMM_API
 Pango::AttrFloat wrap(PangoAttrFloat* object, bool take_copy = false);
 
 /** @relates Pango::AttrFontDesc */
+PANGOMM_API
 Pango::AttrFontDesc wrap(PangoAttrFontDesc* object, bool take_copy = false);
 
 /** @relates Pango::AttrShape */
+PANGOMM_API
 Pango::AttrShape wrap(PangoAttrShape* object, bool take_copy = false);
 
 } //namespace Glib
diff --git a/pango/src/attriter.hg b/pango/src/attriter.hg
index 038e690..07b4810 100644
--- a/pango/src/attriter.hg
+++ b/pango/src/attriter.hg
@@ -29,7 +29,7 @@ namespace Pango
  * it can be advanced through the style changes in the text using Pango::AttrIter::next().
  * At each style change, the range of the current style segment and the attributes currently in effect can 
be queried.
  */
-class AttrIter
+class PANGOMM_API AttrIter
 {
   _CLASS_GENERIC(AttrIter, PangoAttrIterator)
   _IGNORE(pango_attr_iterator_copy, pango_attr_iterator_destroy, pango_attr_iterator_next, 
pango_attr_iterator_get_font)
@@ -107,6 +107,7 @@ namespace Glib
 {
 
 /** @relates Pango::AttrIter */
+PANGOMM_API
 Pango::AttrIter wrap(PangoAttrIterator* object, bool take_copy=false);
 
 } // namespace Glib
diff --git a/pango/src/attrlist.hg b/pango/src/attrlist.hg
index 79314fb..abea063 100644
--- a/pango/src/attrlist.hg
+++ b/pango/src/attrlist.hg
@@ -34,9 +34,9 @@ namespace Pango
  *
  * When obtaining an AttrList, you should check that it is valid. For instance, if(attrlist).
  */
-class AttrList
+class PANGOMM_API AttrList
 {
-  _CLASS_BOXEDTYPE(AttrList, PangoAttrList, pango_attr_list_new, pango_attr_list_copy, pango_attr_list_unref)
+  _CLASS_BOXEDTYPE(AttrList, PangoAttrList, pango_attr_list_new, pango_attr_list_copy, 
pango_attr_list_unref, PANGOMM_API)
   _IGNORE(pango_attr_list_copy, pango_attr_list_ref, pango_attr_list_unref)
 public:
   /** Constructs an attribute list by parsing a marked-up text (see markup format).
diff --git a/pango/src/cairofontmap.hg b/pango/src/cairofontmap.hg
index 00a1950..7f58278 100644
--- a/pango/src/cairofontmap.hg
+++ b/pango/src/cairofontmap.hg
@@ -17,6 +17,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <glibmm/interface.h>
 #include <cairomm/enums.h>
 #include <pango/pangocairo.h>
@@ -33,9 +35,9 @@ namespace Pango
 
 /** A Pango::CairoFontMap represents the set of fonts available for a particular rendering system.
  */
-class CairoFontMap : public Glib::Interface
+class PANGOMM_API CairoFontMap : public Glib::Interface
 {
-   _CLASS_INTERFACE(CairoFontMap, PangoCairoFontMap, PANGO_CAIRO_FONT_MAP, PangoCairoFontMapIface)
+   _CLASS_INTERFACE(CairoFontMap, PangoCairoFontMap, PANGO_CAIRO_FONT_MAP, PangoCairoFontMapIface, , , 
PANGOMM_API)
 
 public:
   //_WRAP_METHOD(static Glib::RefPtr<PangoFontMap> get_default(), pango_cairo_font_map_get_default) //TODO: 
ref this?
diff --git a/pango/src/color.hg b/pango/src/color.hg
index 4bb0b86..edba231 100644
--- a/pango/src/color.hg
+++ b/pango/src/color.hg
@@ -15,6 +15,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <glibmm/value.h>
 #include <glibmm/utility.h>
 #include <pango/pango-attributes.h>
@@ -26,9 +28,9 @@ namespace Pango
 
 /** A Pango::Color is used to represent a color in an uncalibrated RGB colorspace.
  */
-class Color
+class PANGOMM_API Color
 {
-  _CLASS_BOXEDTYPE_STATIC(Color, PangoColor)
+  _CLASS_BOXEDTYPE_STATIC(Color, PangoColor, PANGOMM_API)
   _IGNORE(pango_color_copy, pango_color_free)
 
 public:
diff --git a/pango/src/context.hg b/pango/src/context.hg
index ae1d6c3..5c8d855 100644
--- a/pango/src/context.hg
+++ b/pango/src/context.hg
@@ -68,9 +68,9 @@ _WRAP_ENUM(GravityHint, PangoGravityHint)
  * that is the closest match for a Pango::FontDescription; however that's not
  * necessarily the font that will be used for rendering).
  */
-class Context : public Glib::Object
+class PANGOMM_API Context : public Glib::Object
 {
-   _CLASS_GOBJECT(Context, PangoContext, PANGO_CONTEXT, Glib::Object, GObject)
+   _CLASS_GOBJECT(Context, PangoContext, PANGO_CONTEXT, Glib::Object, GObject, , , PANGOMM_API)
    _IGNORE(pango_context_set_font_map) //PANGO_ENABLE_BACKEND
    _IGNORE(pango_context_list_families)
 protected:
diff --git a/pango/src/coverage.hg b/pango/src/coverage.hg
index 852f379..a2d0f9e 100644
--- a/pango/src/coverage.hg
+++ b/pango/src/coverage.hg
@@ -17,6 +17,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <glibmm/value.h>
 #include <pango/pango-font.h>
 
@@ -31,9 +33,9 @@ _CC_INCLUDE(pango/pango-enum-types.h)
  * It is often necessary in pango to determine if a particular font can represent a particular character,
  * and also how well it can represent that character. Pango::Coverage holds this information.
  */
-class Coverage final
+class PANGOMM_API Coverage final
 {
-  _CLASS_OPAQUE_REFCOUNTED(Coverage, PangoCoverage, pango_coverage_new, pango_coverage_ref, 
pango_coverage_unref)
+  _CLASS_OPAQUE_REFCOUNTED(Coverage, PangoCoverage, pango_coverage_new, pango_coverage_ref, 
pango_coverage_unref, PANGOMM_API)
   _IGNORE(pango_coverage_ref, pango_coverage_unref)
   _IGNORE(pango_coverage_copy) //pango ref doc: "This function may now be unecessary since we refcount the 
structure. Mail otaylor redhat.com if you use it."
   _IGNORE(pango_coverage_to_bytes, pango_coverage_from_bytes, pango_coverage_max)dnl// deprecated
diff --git a/pango/src/font.hg b/pango/src/font.hg
index b0ecc54..5b1b72c 100644
--- a/pango/src/font.hg
+++ b/pango/src/font.hg
@@ -45,14 +45,14 @@ const double SCALE_X_LARGE  = 1.4399999999999;
 const double SCALE_XX_LARGE = 1.728;
 
 #ifndef DOXYGEN_SHOULD_SKIP_THIS
-class FontMap;
+class PANGOMM_API FontMap;
 #endif //DOXYGEN_SHOULD_SKIP_THIS
 
 /** A Pango::Font is used to represent a font in a rendering-system-independent matter.
  */
-class Font : public Glib::Object
+class PANGOMM_API Font : public Glib::Object
 {
-  _CLASS_GOBJECT(Font, PangoFont, PANGO_FONT, Glib::Object, GObject)
+  _CLASS_GOBJECT(Font, PangoFont, PANGO_FONT, Glib::Object, GObject, , , PANGOMM_API)
   _IGNORE(pango_font_find_shaper) //This would return a PangoEngineShape* but the definition of the struct 
is surrounded by #define PANGO_ENABLE_BACKEND [...] #endif. So don't wrap it.
 
 public:
diff --git a/pango/src/fontdescription.hg b/pango/src/fontdescription.hg
index 70e8adf..678d817 100644
--- a/pango/src/fontdescription.hg
+++ b/pango/src/fontdescription.hg
@@ -17,6 +17,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <glibmm/value.h>
 #include <pango/pango-font.h>
 
@@ -36,9 +38,9 @@ _WRAP_ENUM(Gravity, PangoGravity)
 /** A Pango::FontDescription represents the description of an ideal font.
  * It is used both to list what fonts are available on the system and also for specifying the 
characteristics of a font to load.
  */
-class FontDescription
+class PANGOMM_API FontDescription
 {
-  _CLASS_BOXEDTYPE(FontDescription, PangoFontDescription, pango_font_description_new, 
pango_font_description_copy, pango_font_description_free)
+  _CLASS_BOXEDTYPE(FontDescription, PangoFontDescription, pango_font_description_new, 
pango_font_description_copy, pango_font_description_free, PANGOMM_API)
   _IGNORE(pango_font_description_free, pango_font_description_copy, pango_font_description_copy_static, 
pango_font_description_equal)
 
   /* These functions are dangerous! The first casts the "const" from the parameter away
diff --git a/pango/src/fontface.hg b/pango/src/fontface.hg
index ebe6925..b8cc01e 100644
--- a/pango/src/fontface.hg
+++ b/pango/src/fontface.hg
@@ -32,9 +32,9 @@ namespace Pango
 
 /** A Pango::FontFace is used to represent a group of fonts with the same family, slant, weight, width, but 
varying sizes.
  */
-class FontFace : public Glib::Object
+class PANGOMM_API FontFace : public Glib::Object
 {
-   _CLASS_GOBJECT(FontFace, PangoFontFace, PANGO_FONT_FACE, Glib::Object, GObject)
+   _CLASS_GOBJECT(FontFace, PangoFontFace, PANGO_FONT_FACE, Glib::Object, GObject, , , PANGOMM_API)
 
 public:
   _WRAP_METHOD(FontDescription describe() const, pango_font_face_describe)
diff --git a/pango/src/fontfamily.hg b/pango/src/fontfamily.hg
index 91d68ea..a437179 100644
--- a/pango/src/fontfamily.hg
+++ b/pango/src/fontfamily.hg
@@ -33,9 +33,9 @@ namespace Pango
 /** A Pango::FontFamily is used to represent a family of related font faces.
  * The faces in a family share a common design, but differ in slant, weight, width and other aspects.
  */
-class FontFamily : public Glib::Object
+class PANGOMM_API FontFamily : public Glib::Object
 {
-   _CLASS_GOBJECT(FontFamily, PangoFontFamily, PANGO_FONT_FAMILY, Glib::Object, GObject)
+   _CLASS_GOBJECT(FontFamily, PangoFontFamily, PANGO_FONT_FAMILY, Glib::Object, GObject, , , PANGOMM_API)
    _IGNORE(pango_font_family_list_faces)
 
 public:
diff --git a/pango/src/fontmap.hg b/pango/src/fontmap.hg
index 4f3dd13..4065f5d 100644
--- a/pango/src/fontmap.hg
+++ b/pango/src/fontmap.hg
@@ -29,13 +29,13 @@ _PINCLUDE(glibmm/private/object_p.h)
 namespace Pango
 {
 
-class Context;
+class PANGOMM_API Context;
 
 /** A Pango::FontMap represents the set of fonts available for a particular rendering system.
  */
-class FontMap : public Glib::Object
+class PANGOMM_API FontMap : public Glib::Object
 {
-   _CLASS_GOBJECT(FontMap, PangoFontMap, PANGO_FONT_MAP, Glib::Object, GObject)
+   _CLASS_GOBJECT(FontMap, PangoFontMap, PANGO_FONT_MAP, Glib::Object, GObject, , , PANGOMM_API)
    _IGNORE(pango_font_map_list_families)
 
 public:
diff --git a/pango/src/fontmetrics.hg b/pango/src/fontmetrics.hg
index 96612ad..73f4801 100644
--- a/pango/src/fontmetrics.hg
+++ b/pango/src/fontmetrics.hg
@@ -19,6 +19,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <glibmm/value.h>
 #include <pango/pango-font.h>
 
@@ -29,9 +31,9 @@ namespace Pango
 
 /** A Pango::FontMetrics holds the overall metric information for a font (possibly restricted to a script).
  */
-class FontMetrics
+class PANGOMM_API FontMetrics
 {
-  _CLASS_BOXEDTYPE(FontMetrics, PangoFontMetrics, NONE, pango_font_metrics_ref, pango_font_metrics_unref)
+  _CLASS_BOXEDTYPE(FontMetrics, PangoFontMetrics, NONE, pango_font_metrics_ref, pango_font_metrics_unref, 
PANGOMM_API)
   _IGNORE(pango_font_metrics_unref, pango_font_metrics_ref)
 public:
   _WRAP_METHOD(int get_ascent() const, pango_font_metrics_get_ascent)
diff --git a/pango/src/fontset.hg b/pango/src/fontset.hg
index 73e5a39..dff0cf4 100644
--- a/pango/src/fontset.hg
+++ b/pango/src/fontset.hg
@@ -33,9 +33,9 @@ namespace Pango
 
 /** A Pango::Fontset is used to represent a set of fonts.
  */
-class Fontset : public Glib::Object
+class PANGOMM_API Fontset : public Glib::Object
 {
-  _CLASS_GOBJECT(Fontset, PangoFontset, PANGO_FONTSET, Glib::Object, GObject)
+  _CLASS_GOBJECT(Fontset, PangoFontset, PANGO_FONTSET, Glib::Object, GObject, , , PANGOMM_API)
 
 public:
   _WRAP_METHOD(Glib::RefPtr<Font> get_font(guint wc) const, pango_fontset_get_font)
diff --git a/pango/src/glyph.hg b/pango/src/glyph.hg
index c674c3e..3bea674 100644
--- a/pango/src/glyph.hg
+++ b/pango/src/glyph.hg
@@ -17,6 +17,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <pango/pango-glyph.h>
 
 _DEFS(pangomm,pango)
@@ -24,8 +26,8 @@ _DEFS(pangomm,pango)
 namespace Pango
 {
 
-class GlyphInfo;
-class GlyphGeometry;
+class PANGOMM_API GlyphInfo;
+class PANGOMM_API GlyphGeometry;
 
 
 /** A Pango::Glyph represents a single glyph in the output form of a string.
@@ -45,7 +47,7 @@ typedef PangoGlyphVisAttr GlyphVisAttr;
 
 /** A Pango::GlyphInfo represents a single glyph together with positioning information and visual attributes.
  */
-class GlyphInfo
+class PANGOMM_API GlyphInfo
 {
   _CLASS_GENERIC(GlyphInfo, PangoGlyphInfo)
 
@@ -96,7 +98,7 @@ protected:
 
 /** A Pango::GlyphGeometry contains width and positioning information for a single glyph. Distances are in 
1/64ths of a point.
  */
-class GlyphGeometry
+class PANGOMM_API GlyphGeometry
 {
   _CLASS_GENERIC(GlyphGeometry, PangoGlyphGeometry)
 
@@ -147,7 +149,7 @@ protected:
  * to create a wrapper class for PangoGlyphVisAttr in future. Currently, however,
  * PangoGlyphVisAttr just contains one simple data field (guint is_cluster_start).
  */
-/*class GlyphVisAttr
+/*class PANGOMM_API GlyphVisAttr
 {
   _CLASS_GENERIC(GlyphVisAttr, PangoGlyphVisAttr)
 
@@ -175,21 +177,27 @@ namespace Glib
 {
 
 /** @relates Pango::GlyphInfo */
+PANGOMM_API
 Pango::GlyphInfo& wrap(PangoGlyphInfo* object);
 
 /** @relates Pango::GlyphInfo */
+PANGOMM_API
 const Pango::GlyphInfo& wrap(const PangoGlyphInfo* object);
 
 /** @relates Pango::GlyphGeometry */
+PANGOMM_API
 Pango::GlyphGeometry& wrap(PangoGlyphGeometry* object);
 
 /** @relates Pango::GlyphGeometry */
+PANGOMM_API
 const Pango::GlyphGeometry& wrap(const PangoGlyphGeometry* object);
 
 /* @relates Pango::GlyphVisAttr */
+//PANGOMM_API
 //Pango::GlyphVisAttr& wrap(PangoGlyphVisAttr* object);
 
 /* @relates Pango::GlyphVisAttr */
+//PANGOMM_API
 //const Pango::GlyphVisAttr& wrap(const PangoGlyphVisAttr* object);
 
 } //namespace Glib
diff --git a/pango/src/glyphstring.hg b/pango/src/glyphstring.hg
index 5701298..a04636c 100644
--- a/pango/src/glyphstring.hg
+++ b/pango/src/glyphstring.hg
@@ -32,9 +32,9 @@ namespace Pango
 /** A Pango::GlyphString is used to store strings of glyphs with geometry and visual attribute information.
  * It can be measured or drawn to the screen.
  */
-class GlyphString
+class PANGOMM_API GlyphString
 {
-  _CLASS_BOXEDTYPE(GlyphString, PangoGlyphString, pango_glyph_string_new, pango_glyph_string_copy, 
pango_glyph_string_free)
+  _CLASS_BOXEDTYPE(GlyphString, PangoGlyphString, pango_glyph_string_new, pango_glyph_string_copy, 
pango_glyph_string_free, PANGOMM_API)
   _IGNORE(pango_glyph_string_free, pango_glyph_string_copy)
   _IGNORE(pango_glyph_string_index_to_x, pango_glyph_string_x_to_index, 
pango_glyph_string_get_logical_widths)
 
diff --git a/pango/src/item.hg b/pango/src/item.hg
index 191ed88..e79e017 100644
--- a/pango/src/item.hg
+++ b/pango/src/item.hg
@@ -33,7 +33,7 @@ class GlyphString;
  * calling Pango::Item::get_analysis(). Objects of this class can be used for some
  * calculations in Pango::GlyphString.
  */
-class Analysis
+class PANGOMM_API Analysis
 {
   _CLASS_GENERIC(Analysis, PangoAnalysis)
 
@@ -88,7 +88,7 @@ protected:
  * the Pango::Analysis data member that can be accessed with get_analysis()
  * it is needed for further calculations in Pango::GlyphString.
  */
-class Item
+class PANGOMM_API Item
 {
   _CLASS_GENERIC(Item, PangoItem) //There is the whole set of functions for _CLASS_BOXEDTYPE but 
unfortunately PangoItem is not registered as a boxed type and lacks pango_item_get_type...
   _IGNORE(pango_item_copy,pango_item_free)
@@ -156,12 +156,15 @@ namespace Glib
 {
 
 /** @relates Pango::Analysis */
+PANGOMM_API
 Pango::Analysis& wrap(PangoAnalysis* object);
 
 /** @relates Pango::Analysis */
+PANGOMM_API
 const Pango::Analysis& wrap(const PangoAnalysis* object);
 
 /** @relates Pango::Item */
+PANGOMM_API
 Pango::Item wrap(PangoItem* object, bool take_copy=true);
 
 } // namespace Glib
diff --git a/pango/src/language.hg b/pango/src/language.hg
index 8b07c60..44e9303 100644
--- a/pango/src/language.hg
+++ b/pango/src/language.hg
@@ -15,6 +15,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <glibmm/value.h>
 #include <pango/pango-attributes.h>
 
@@ -27,9 +29,9 @@ _WRAP_ENUM(Script, PangoScript)
 
 /** A Pango::Language is used to represent a language.
  */
-class Language
+class PANGOMM_API Language
 {
-  _CLASS_BOXEDTYPE(Language, PangoLanguage, _pango_language_new, _pango_language_copy, _pango_language_free)
+  _CLASS_BOXEDTYPE(Language, PangoLanguage, _pango_language_new, _pango_language_copy, _pango_language_free, 
PANGOMM_API)
   _IGNORE(pango_language_get_sample_string) //This function is a bad hack for internal use by renderers and 
Pango (from pango/pango-utils.c)
   _IGNORE(pango_language_to_string) //This is defined as a macro
   _CUSTOM_DEFAULT_CTOR
diff --git a/pango/src/layout.hg b/pango/src/layout.hg
index 99584d0..2c60b97 100644
--- a/pango/src/layout.hg
+++ b/pango/src/layout.hg
@@ -44,9 +44,9 @@ _WRAP_ENUM(EllipsizeMode, PangoEllipsizeMode)
  * the layout can be rendered, and conversion between logical character positions
  * within the layout's text, and the physical position of the resulting glyphs can be made.
  */
-class Layout : public Glib::Object
+class PANGOMM_API Layout : public Glib::Object
 {
-  _CLASS_GOBJECT(Layout, PangoLayout, PANGO_LAYOUT, Glib::Object, GObject)
+  _CLASS_GOBJECT(Layout, PangoLayout, PANGO_LAYOUT, Glib::Object, GObject, , , PANGOMM_API)
   _IGNORE(pango_layout_set_text, pango_layout_set_markup, pango_layout_set_markup_with_accel, 
pango_layout_get_log_attrs, pango_layout_get_iter)
 
 protected:
diff --git a/pango/src/layoutiter.hg b/pango/src/layoutiter.hg
index ee8f144..1914dc0 100644
--- a/pango/src/layoutiter.hg
+++ b/pango/src/layoutiter.hg
@@ -28,9 +28,9 @@ namespace Pango
 
 /** A Pango::LayoutIter can be used to iterate over the visual extents of a Pango::Layout.
  */
-class LayoutIter
+class PANGOMM_API LayoutIter
 {
-  _CLASS_BOXEDTYPE(LayoutIter, PangoLayoutIter, NONE, pango_layout_iter_copy, pango_layout_iter_free)
+  _CLASS_BOXEDTYPE(LayoutIter, PangoLayoutIter, NONE, pango_layout_iter_copy, pango_layout_iter_free, 
PANGOMM_API)
   _IGNORE(pango_layout_iter_copy, pango_layout_iter_free)
 
 public:
diff --git a/pango/src/layoutline.hg b/pango/src/layoutline.hg
index 27dac08..1f307f3 100644
--- a/pango/src/layoutline.hg
+++ b/pango/src/layoutline.hg
@@ -27,16 +27,16 @@ _DEFS(pangomm,pango)
 namespace Pango
 {
 
-class Layout;
+class PANGOMM_API Layout;
 
 /** A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layout.
  * Pango::LayoutLine objects are obtained by calling Pango::Layout::get_line()
  * and are only valid until the text, attributes, or settings of the parent Pango::Layout are modified.
  * Routines for rendering Pango::Layout objects are provided in code specific to each rendering system.
  */
-class LayoutLine final
+class PANGOMM_API LayoutLine final
 {
-  _CLASS_OPAQUE_REFCOUNTED(LayoutLine, PangoLayoutLine, NONE, pango_layout_line_ref, pango_layout_line_unref)
+  _CLASS_OPAQUE_REFCOUNTED(LayoutLine, PangoLayoutLine, NONE, pango_layout_line_ref, 
pango_layout_line_unref, PANGOMM_API)
   _IGNORE(pango_layout_line_ref, pango_layout_line_unref)
   _IGNORE(pango_layout_line_get_x_ranges)
 public:
diff --git a/pango/src/layoutrun.hg b/pango/src/layoutrun.hg
index 7f4ccfc..07caa38 100644
--- a/pango/src/layoutrun.hg
+++ b/pango/src/layoutrun.hg
@@ -25,9 +25,9 @@ _DEFS(pangomm,pango)
 namespace Pango
 {
 
-class Item;
-class GlyphString;
-class LayoutRun;
+class PANGOMM_API Item;
+class PANGOMM_API GlyphString;
+class PANGOMM_API LayoutRun;
 
 /** A Pango::GlyphItem is a pair of a Pango::Items and the glyphs resulting from shaping the text 
corresponding to an item.
  * As an example of the usage of Pango::GlyphItem, the results of shaping text with Pango::Layout is a list 
of Pango::LayoutLine, 
@@ -40,9 +40,9 @@ typedef LayoutRun GlyphItem;
 /** A Pango::LayoutRun represents a single run within a LayoutLine.
  * It is simply an alternate name for GlyphItem.
  */
-class LayoutRun
+class PANGOMM_API LayoutRun
 {
-  _CLASS_BOXEDTYPE(LayoutRun, PangoGlyphItem, NONE, pango_glyph_item_copy, pango_glyph_item_free)
+  _CLASS_BOXEDTYPE(LayoutRun, PangoGlyphItem, NONE, pango_glyph_item_copy, pango_glyph_item_free, 
PANGOMM_API)
   _IGNORE(pango_glyph_item_free, pango_glyph_item_copy)
 
   _WRAP_METHOD(GlyphItem split(const Glib::ustring& text, int split_index), pango_glyph_item_split)
diff --git a/pango/src/rectangle.hg b/pango/src/rectangle.hg
index 899dd3c..44a0f4b 100644
--- a/pango/src/rectangle.hg
+++ b/pango/src/rectangle.hg
@@ -15,6 +15,8 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
+_CONFIGINCLUDE(pangommconfig.h)
+
 #include <pango/pango-types.h>
 
 _DEFS(pangomm,pango)
@@ -30,7 +32,7 @@ namespace Pango
  * from the extents rectangle to more traditional font metrics.
  * The units of rectangles usually are in 1/Pango::SCALE of a device unit.
  */
-class Rectangle
+class PANGOMM_API Rectangle
 {
   _CLASS_GENERIC(Rectangle, PangoRectangle)
 
@@ -137,9 +139,11 @@ namespace Glib
 {
 
 /** @relates Pango::Rectangle */
+PANGOMM_API
 Pango::Rectangle& wrap(PangoRectangle* object);
 
 /** @relates Pango::Rectangle */
+PANGOMM_API
 const Pango::Rectangle& wrap(const PangoRectangle* object);
 
 } /* namespace Glib */
diff --git a/pango/src/renderer.hg b/pango/src/renderer.hg
index 02d5704..03a9948 100644
--- a/pango/src/renderer.hg
+++ b/pango/src/renderer.hg
@@ -39,9 +39,9 @@ _CC_INCLUDE(pango/pango-enum-types.h)
  * By subclassing Pango::Renderer and overriding operations such as draw_glyphs and draw_rectangle, 
  * renderers for particular font backends and destinations can be created.
  */
-class Renderer : public Glib::Object
+class PANGOMM_API Renderer : public Glib::Object
 {
-  _CLASS_GOBJECT(Renderer, PangoRenderer, PANGO_RENDERER, Glib::Object, GObject)
+  _CLASS_GOBJECT(Renderer, PangoRenderer, PANGO_RENDERER, Glib::Object, GObject, , , PANGOMM_API)
 
 public:
   _WRAP_ENUM(Part, PangoRenderPart)
diff --git a/pango/src/tabarray.hg b/pango/src/tabarray.hg
index e9b852a..875cf2f 100644
--- a/pango/src/tabarray.hg
+++ b/pango/src/tabarray.hg
@@ -33,9 +33,9 @@ _WRAP_ENUM(TabAlign, PangoTabAlign)
 /** A Pango::TabArray contains an array of tab stops.
  * Each tab stop has an alignment and a position.
  */
-class TabArray
+class PANGOMM_API TabArray
 {
-  _CLASS_BOXEDTYPE(TabArray, PangoTabArray, NONE, pango_tab_array_copy, pango_tab_array_free)
+  _CLASS_BOXEDTYPE(TabArray, PangoTabArray, NONE, pango_tab_array_copy, pango_tab_array_free, PANGOMM_API)
   _IGNORE(pango_tab_array_free, pango_tab_array_copy, pango_tab_array_get_tab, pango_tab_array_get_tabs, 
pango_tab_array_new_with_positions)
 public:
   explicit TabArray(int initial_size, bool positions_in_pixels = true);


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