[gtkmm/use-dllexport-3-24: 5/6] gtk/gtkmm/*.h: Mark functions with GTKMM_API



commit 923f3b9fb4af4ab5a7bca64a0e27d6bd6d1e81a5
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Sat Apr 11 23:17:51 2020 +0800

    gtk/gtkmm/*.h: Mark functions with GTKMM_API
    
    If gmmproc is new enough to generate the full sources from the .hg files
    with GTKMM_API applied to all applicable places, we can use this to
    export symbols without the need to use gendef.exe.
    
    The build-time check to check if gmmproc is new enough will be in an
    upcoming commit.

 gtk/gtkmm/accelkey.h                |  4 +++-
 gtk/gtkmm/accelmap.h                |  8 ++++++++
 gtk/gtkmm/cellrenderer_generation.h |  6 +++---
 gtk/gtkmm/childpropertyproxy_base.h |  6 +++---
 gtk/gtkmm/listviewtext.h            |  2 +-
 gtk/gtkmm/object.h                  |  2 +-
 gtk/gtkmm/radiobuttongroup.h        | 10 +++++-----
 gtk/gtkmm/selectiondata_private.h   |  2 +-
 gtk/gtkmm/stock.h                   |  5 +++++
 gtk/gtkmm/stockid.h                 |  6 ++++--
 gtk/gtkmm/styleproperty.h           |  2 +-
 gtk/gtkmm/targetentry.h             |  2 +-
 gtk/gtkmm/treemodelcolumn.h         |  6 +++---
 gtk/gtkmm/treeview_private.h        |  4 ++++
 gtk/gtkmm/wrap_init.h               |  4 ++++
 15 files changed, 47 insertions(+), 22 deletions(-)
---
diff --git a/gtk/gtkmm/accelkey.h b/gtk/gtkmm/accelkey.h
index 0bfa518c..54ff69ca 100644
--- a/gtk/gtkmm/accelkey.h
+++ b/gtk/gtkmm/accelkey.h
@@ -21,6 +21,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+#include <gtkmmconfig.h>
+
 #include <gdk/gdkkeysyms.h>
 #include <gdkmm/types.h>
 
@@ -38,7 +40,7 @@ namespace Gtk
  * @see Gtk::AccelMap
  * @ingroup Menus
  */
-class AccelKey
+class GTKMM_API AccelKey
 {
 public:
   AccelKey();
diff --git a/gtk/gtkmm/accelmap.h b/gtk/gtkmm/accelmap.h
index cab6b42a..c6cfd3c7 100644
--- a/gtk/gtkmm/accelmap.h
+++ b/gtk/gtkmm/accelmap.h
@@ -53,6 +53,7 @@ namespace AccelMap
  * @param accel_mods the accelerator modifiers
  *
  */
+GTKMM_API
 void add_entry(const std::string& accel_path,
                guint accel_key,
                Gdk::ModifierType accel_mods);
@@ -70,6 +71,7 @@ void add_entry(const std::string& accel_path,
  * @param replace     true if other accelerators may be deleted upon conflicts
  * @result     true if the accelerator could be changed, false otherwise
  */
+GTKMM_API
 bool change_entry(const std::string& accel_path,
                   guint accel_key,
                   Gdk::ModifierType accel_mods,
@@ -80,6 +82,7 @@ bool change_entry(const std::string& accel_path,
  *
  * @param filename a file containing accelerator specifications
  */
+GTKMM_API
 void load(const std::string& filename);
 
 /** Saves current accelerator specifications (accelerator path, key
@@ -89,6 +92,7 @@ void load(const std::string& filename);
  *
  * @param filename the file to contain accelerator specifications
  */
+GTKMM_API
 void save(const std::string& filename);
 
 /** Locks the given accelerator path.
@@ -107,6 +111,7 @@ void save(const std::string& filename);
  *
  * @newin{2,4}
  */
+GTKMM_API
 void lock_path(const std::string& accel_path);
 
 /** Unlocks the given accelerator path. Refer to gtk_accel_map_lock_path()
@@ -116,6 +121,7 @@ void lock_path(const std::string& accel_path);
  *
  * @newin{2,4}
  */
+GTKMM_API
 void unlock_path(const std::string& accel_path);
 
 /** Looks up the accelerator entry for accel_path.
@@ -124,6 +130,7 @@ void unlock_path(const std::string& accel_path);
  *
  * @newin{2,10}
  */
+GTKMM_API
 bool lookup_entry (const Glib::ustring& accel_path);
 
 /** Looks up the accelerator entry for accel_path and fills in key.
@@ -133,6 +140,7 @@ bool lookup_entry (const Glib::ustring& accel_path);
  *
  * @newin{2,10}
  */
+GTKMM_API
 bool lookup_entry (const Glib::ustring& accel_path, Gtk::AccelKey& key);
 
 } // namespace AccelMap
diff --git a/gtk/gtkmm/cellrenderer_generation.h b/gtk/gtkmm/cellrenderer_generation.h
index fbe00482..6d0d9f65 100644
--- a/gtk/gtkmm/cellrenderer_generation.h
+++ b/gtk/gtkmm/cellrenderer_generation.h
@@ -47,13 +47,13 @@ CellRenderer* generate_cellrenderer(bool editable = false)
 #if !defined(__GNUC__) || __GNUC__ > 2
 // gcc 2.95.x fails in TreeView::append_column_editable if the
 // following specializations are declared in the header.
-template<>
+template<> GTKMM_API
 CellRenderer* generate_cellrenderer<bool>(bool editable);
 
-template<>
+template<> GTKMM_API
 CellRenderer* generate_cellrenderer< Glib::RefPtr<Gdk::Pixbuf> >(bool editable);
 
-template<>
+template<> GTKMM_API
 CellRenderer* generate_cellrenderer<AccelKey>(bool editable);
 
 #endif
diff --git a/gtk/gtkmm/childpropertyproxy_base.h b/gtk/gtkmm/childpropertyproxy_base.h
index 6ae0428c..f0147157 100644
--- a/gtk/gtkmm/childpropertyproxy_base.h
+++ b/gtk/gtkmm/childpropertyproxy_base.h
@@ -33,7 +33,7 @@ namespace Gtk
 
 // We need to reimplement the connect() method so that it uses
 // "child-notify" as prefix for notify signal.
-class SignalProxyChildProperty : public Glib::SignalProxyProperty
+class GTKMM_API SignalProxyChildProperty : public Glib::SignalProxyProperty
 {
 public:
   SignalProxyChildProperty(Widget* child, const char* property_name)
@@ -42,9 +42,9 @@ public:
   sigc::connection connect(const SlotType& sl);
 };
 
-class Container;
+class GTKMM_API Container;
 
-class ChildPropertyProxy_Base
+class GTKMM_API ChildPropertyProxy_Base
 {
 public:
   ChildPropertyProxy_Base(Container* parent, Widget& child, const char* property_name);
diff --git a/gtk/gtkmm/listviewtext.h b/gtk/gtkmm/listviewtext.h
index 9f29694a..09dfc2bc 100644
--- a/gtk/gtkmm/listviewtext.h
+++ b/gtk/gtkmm/listviewtext.h
@@ -38,7 +38,7 @@ namespace Gtk
  *
  * @newin{2,10}
  */
-class ListViewText : public Gtk::TreeView
+class GTKMM_API ListViewText : public Gtk::TreeView
 {
 public:
 
diff --git a/gtk/gtkmm/object.h b/gtk/gtkmm/object.h
index 42896900..0d941791 100644
--- a/gtk/gtkmm/object.h
+++ b/gtk/gtkmm/object.h
@@ -27,7 +27,7 @@
 namespace Gtk
 {
 
-class Object;
+class GTKMM_API Object;
 
 /** Mark a Gtk::Object as owned by its parent container widget, so you don't need to delete it manually.
  * For instance,
diff --git a/gtk/gtkmm/radiobuttongroup.h b/gtk/gtkmm/radiobuttongroup.h
index 0776ca10..c93c8a27 100644
--- a/gtk/gtkmm/radiobuttongroup.h
+++ b/gtk/gtkmm/radiobuttongroup.h
@@ -33,10 +33,10 @@ extern "C"
 namespace Gtk
 {
 
-class RadioButton;
-class RadioMenuItem;
-class RadioAction; //deprecated
-class RadioToolButton;
+class GTKMM_API RadioButton;
+class GTKMM_API RadioMenuItem;
+class GTKMM_API RadioAction; //deprecated
+class GTKMM_API RadioToolButton;
 
 /** RadioButtonGroup, identifier for RadioButtons.
  * To set up this RadioButtonGroup, construct a RadioButtonGroup and then pass it
@@ -44,7 +44,7 @@ class RadioToolButton;
  * to keep the RadioButtonGroup beyond the initial construction.
  * It should not be instantiated with new, and it will be invalid after the RadioButtons have been deleted.
  */
-class RadioButtonGroup
+class GTKMM_API RadioButtonGroup
 {
 public:
   RadioButtonGroup();
diff --git a/gtk/gtkmm/selectiondata_private.h b/gtk/gtkmm/selectiondata_private.h
index cf5c4ee3..bdbe10c1 100644
--- a/gtk/gtkmm/selectiondata_private.h
+++ b/gtk/gtkmm/selectiondata_private.h
@@ -34,7 +34,7 @@ namespace Gtk
  * or try to free the underlying instance in its destructor.
  * So far it's only used by gtkmm internally.
  */
-class SelectionData_WithoutOwnership : public SelectionData
+class GTKMM_API SelectionData_WithoutOwnership : public SelectionData
 {
 public:
   explicit SelectionData_WithoutOwnership(GtkSelectionData* gobject);
diff --git a/gtk/gtkmm/stock.h b/gtk/gtkmm/stock.h
index b2091a3f..7042142b 100644
--- a/gtk/gtkmm/stock.h
+++ b/gtk/gtkmm/stock.h
@@ -293,6 +293,7 @@ extern GTKMM_API const Gtk::BuiltinStockID ZOOM_OUT;         /*!< @image html gt
  *             stock ID the old item gets replaced.
  * @deprecated Use icon names instead of StockItem, StockID and BuiltinStockID.
  */
+GTKMM_API
 void add(const Gtk::StockItem& item);
 
 /** Fills item with the registered values for stock_id.
@@ -302,6 +303,7 @@ void add(const Gtk::StockItem& item);
   * @return <tt>true</tt> if the item was found - <tt>false</tt> otherwise.
   * @deprecated Use icon names instead of StockItem, StockID and BuiltinStockID.
   */
+GTKMM_API
 bool lookup(const Gtk::StockID& stock_id, Gtk::StockItem& item);
 
 /** See IconSet::lookup_default()
@@ -311,6 +313,7 @@ bool lookup(const Gtk::StockID& stock_id, Gtk::StockItem& item);
   * @return <tt>true</tt> if the item was found - <tt>false</tt> otherwise.
   * @deprecated Use icon names instead of StockItem, StockID and BuiltinStockID.
   */
+GTKMM_API
 bool lookup(const Gtk::StockID& stock_id, Glib::RefPtr<Gtk::IconSet>& iconset);
 
 /** Receive an Image of the registered stock id with the correct size.
@@ -321,6 +324,7 @@ bool lookup(const Gtk::StockID& stock_id, Glib::RefPtr<Gtk::IconSet>& iconset);
   * @return <tt>true</tt> if the item was found - <tt>false</tt> otherwise
   * @deprecated Use icon names instead of StockItem, StockID and BuiltinStockID.
   */
+GTKMM_API
 bool lookup(const Gtk::StockID& stock_id, Gtk::IconSize size, Gtk::Image& image);
 
 /** Retrieves a list of all known stock IDs added to an IconFactory or registered with Stock::add().
@@ -328,6 +332,7 @@ bool lookup(const Gtk::StockID& stock_id, Gtk::IconSize size, Gtk::Image& image)
   * @return list of all known stock IDs.
   * @deprecated Use icon names instead of StockItem, StockID and BuiltinStockID.
   */
+GTKMM_API
 std::vector<Gtk::StockID> get_ids();
 
 } // namespace Stock
diff --git a/gtk/gtkmm/stockid.h b/gtk/gtkmm/stockid.h
index 990370eb..080cd161 100644
--- a/gtk/gtkmm/stockid.h
+++ b/gtk/gtkmm/stockid.h
@@ -25,6 +25,8 @@
  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
+#include <gtkmmconfig.h>
+
 #include <glibmm/ustring.h>
 #include <glibmm/containerhandle_shared.h>
 
@@ -36,7 +38,7 @@ struct BuiltinStockID;
 /** See also Gtk::BuiltinStockID.
  * @deprecated Use icon names instead of StockItem, StockID and BuiltinStockID.
  */
-class StockID
+class GTKMM_API StockID
 {
 public:
   /** Create an empty StockID
@@ -138,7 +140,7 @@ namespace Glib
 {
 
 template <>
-class Value<Gtk::StockID> : public Glib::ValueBase_String
+class GTKMM_API Value<Gtk::StockID> : public Glib::ValueBase_String
 {
 public:
   typedef Gtk::StockID CppType;
diff --git a/gtk/gtkmm/styleproperty.h b/gtk/gtkmm/styleproperty.h
index 85309a80..05c0d33e 100644
--- a/gtk/gtkmm/styleproperty.h
+++ b/gtk/gtkmm/styleproperty.h
@@ -30,7 +30,7 @@ namespace Gtk
  *
  * @newin{3,16}
  */
-class StylePropertyBase
+class GTKMM_API StylePropertyBase
 {
 public:
 
diff --git a/gtk/gtkmm/targetentry.h b/gtk/gtkmm/targetentry.h
index 0db2bd18..002428d2 100644
--- a/gtk/gtkmm/targetentry.h
+++ b/gtk/gtkmm/targetentry.h
@@ -38,7 +38,7 @@ extern "C"
 namespace Gtk
 {
 
-class TargetEntry
+class GTKMM_API TargetEntry
 {
 public:
   TargetEntry();
diff --git a/gtk/gtkmm/treemodelcolumn.h b/gtk/gtkmm/treemodelcolumn.h
index e81fc2d0..956aa0af 100644
--- a/gtk/gtkmm/treemodelcolumn.h
+++ b/gtk/gtkmm/treemodelcolumn.h
@@ -26,7 +26,7 @@
 namespace Gtk
 {
 
-class TreeModelColumnBase;
+class GTKMM_API TreeModelColumnBase;
 
 
 /** Typedefed as TreeModel::ColumnRecord.
@@ -67,7 +67,7 @@ class TreeModelColumnBase;
  * sure it's instantiated after Gtk::Main), even when creating multiple models
  * from it.
  */
-class TreeModelColumnRecord
+class GTKMM_API TreeModelColumnRecord
 {
 public:
   TreeModelColumnRecord();
@@ -95,7 +95,7 @@ private:
 /** Base class of TreeModelColumn templates.
  * @ingroup TreeView
  */
-class TreeModelColumnBase
+class GTKMM_API TreeModelColumnBase
 {
 public:
   GType type()  const { return type_;  }
diff --git a/gtk/gtkmm/treeview_private.h b/gtk/gtkmm/treeview_private.h
index 7c2ac637..83e55be3 100644
--- a/gtk/gtkmm/treeview_private.h
+++ b/gtk/gtkmm/treeview_private.h
@@ -32,11 +32,15 @@ namespace Gtk
 namespace TreeView_Private
 {
 
+GTKMM_API
 void SignalProxy_CellData_gtk_callback(GtkTreeViewColumn*, GtkCellRenderer* cell,
                            GtkTreeModel* model, GtkTreeIter* iter, void* data);
+GTKMM_API
 void SignalProxy_CellData_gtk_callback_destroy(void* data);
 
+GTKMM_API
 gboolean SignalProxy_RowSeparator_gtk_callback(GtkTreeModel* model, GtkTreeIter* iter, void* data);
+GTKMM_API
 void SignalProxy_RowSeparator_gtk_callback_destroy(void* data);
 
 
diff --git a/gtk/gtkmm/wrap_init.h b/gtk/gtkmm/wrap_init.h
index a2f66c72..9ab9bf68 100644
--- a/gtk/gtkmm/wrap_init.h
+++ b/gtk/gtkmm/wrap_init.h
@@ -22,6 +22,9 @@
 
 // wrap_init.cc is generated by tools/generate_wrap_init.pl
 
+
+#include <gtkmmconfig.h>
+
 namespace Gtk
 {
 
@@ -31,6 +34,7 @@ namespace Gtk
 // their .h files have not been moved to the gtk+/gtk/deprecated directory.
 #define GDK_DISABLE_DEPRECATION_WARNINGS 1
 
+GTKMM_API
 void wrap_init();
 
 } /* namespace Gtk */


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