summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChun-wei Fan <fanchunwei@src.gnome.org>2021-08-11 16:08:04 +0800
committerChun-wei Fan <fanchunwei@src.gnome.org>2021-08-11 16:45:30 +0800
commit9abc3dcc97709626d2964ef820661cad08fdc991 (patch)
tree485159d172c660a8f470e0e26ee3650f59b3a970
parent6c91df54fb051a559bd5bbab6c0b1d262fea6cd5 (diff)
downloadlibgd-9abc3dcc97709626d2964ef820661cad08fdc991.tar.gz
libgd headers: Include gd-macros.h
...and mark the symbols (except the private ones) with GD_API. This way, on compilers that do not have an auto-export mechanism, we can export symbols by defining GD_API as needed to use compiler directives to export the symbols. This has been tested by generating the introspection files, as well as building the two sample programs against a shared build of libgd with all features enabled.
-rw-r--r--libgd/gd-icon-utils.h8
-rw-r--r--libgd/gd-main-box-child.h7
-rw-r--r--libgd/gd-main-box-generic.h17
-rw-r--r--libgd/gd-main-box-item.h10
-rw-r--r--libgd/gd-main-box.h17
-rw-r--r--libgd/gd-main-icon-box-child.h2
-rw-r--r--libgd/gd-main-icon-box-icon.h4
-rw-r--r--libgd/gd-main-icon-box.h4
-rw-r--r--libgd/gd-main-icon-view.h4
-rw-r--r--libgd/gd-main-list-view.h5
-rw-r--r--libgd/gd-main-view-generic.h12
-rw-r--r--libgd/gd-main-view.h15
-rw-r--r--libgd/gd-margin-container.h5
-rw-r--r--libgd/gd-notification.h7
-rw-r--r--libgd/gd-styled-text-renderer.h7
-rw-r--r--libgd/gd-tagged-entry.h19
-rw-r--r--libgd/gd-toggle-pixbuf-renderer.h5
-rw-r--r--libgd/gd-two-lines-renderer.h5
-rw-r--r--libgd/gd-types-catalog.h3
-rw-r--r--libgd/gd.h1
20 files changed, 150 insertions, 7 deletions
diff --git a/libgd/gd-icon-utils.h b/libgd/gd-icon-utils.h
index 12f4f06..8fbc81e 100644
--- a/libgd/gd-icon-utils.h
+++ b/libgd/gd-icon-utils.h
@@ -25,22 +25,30 @@
#include <cairo.h>
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
+GD_API
cairo_surface_t *gd_copy_image_surface (cairo_surface_t *surface);
+GD_API
cairo_surface_t *gd_create_surface_with_counter (GtkWidget *widget,
cairo_surface_t *base,
gint number);
+GD_API
GIcon *gd_create_symbolic_icon (const gchar *name,
gint base_size);
+GD_API
GIcon *gd_create_symbolic_icon_for_scale (const gchar *name,
gint base_size,
gint scale);
+GD_API
GdkPixbuf *gd_embed_image_in_frame (GdkPixbuf *source_image,
const gchar *frame_image_url,
GtkBorder *slice_width,
GtkBorder *border_width);
+GD_API
cairo_surface_t *gd_embed_surface_in_frame (cairo_surface_t *source_image,
const gchar *frame_image_url,
GtkBorder *slice_width,
diff --git a/libgd/gd-main-box-child.h b/libgd/gd-main-box-child.h
index b2600a6..76d70be 100644
--- a/libgd/gd-main-box-child.h
+++ b/libgd/gd-main-box-child.h
@@ -29,6 +29,7 @@
G_BEGIN_DECLS
#define GD_TYPE_MAIN_BOX_CHILD gd_main_box_child_get_type()
+GD_API
G_DECLARE_INTERFACE (GdMainBoxChild, gd_main_box_child, GD, MAIN_BOX_CHILD, GtkWidget)
struct _GdMainBoxChildInterface
@@ -42,11 +43,17 @@ struct _GdMainBoxChildInterface
void (* set_selected) (GdMainBoxChild *self, gboolean selected);
};
+GD_API
gint gd_main_box_child_get_index (GdMainBoxChild *self);
+GD_API
GdMainBoxItem * gd_main_box_child_get_item (GdMainBoxChild *self);
+GD_API
gboolean gd_main_box_child_get_selected (GdMainBoxChild *self);
+GD_API
gboolean gd_main_box_child_get_selection_mode (GdMainBoxChild *self);
+GD_API
void gd_main_box_child_set_selected (GdMainBoxChild *self, gboolean selected);
+GD_API
void gd_main_box_child_set_selection_mode (GdMainBoxChild *self, gboolean selection_mode);
G_END_DECLS
diff --git a/libgd/gd-main-box-generic.h b/libgd/gd-main-box-generic.h
index 2c9c805..5db7f4b 100644
--- a/libgd/gd-main-box-generic.h
+++ b/libgd/gd-main-box-generic.h
@@ -30,6 +30,7 @@
G_BEGIN_DECLS
#define GD_TYPE_MAIN_BOX_GENERIC gd_main_box_generic_get_type()
+GD_API
G_DECLARE_INTERFACE (GdMainBoxGeneric, gd_main_box_generic, GD, MAIN_BOX_GENERIC, GtkWidget)
struct _GdMainBoxGenericInterface
@@ -47,23 +48,39 @@ struct _GdMainBoxGenericInterface
void (* unselect_child) (GdMainBoxGeneric *self, GdMainBoxChild *child);
};
+GD_API
GdMainBoxChild * gd_main_box_generic_get_child_at_index (GdMainBoxGeneric *self, gint index);
+GD_API
const gchar * gd_main_box_generic_get_last_selected_id (GdMainBoxGeneric *self);
+GD_API
GListModel * gd_main_box_generic_get_model (GdMainBoxGeneric *self);
+GD_API
GList * gd_main_box_generic_get_selected_children (GdMainBoxGeneric *self);
+GD_API
gboolean gd_main_box_generic_get_selection_mode (GdMainBoxGeneric *self);
+GD_API
gboolean gd_main_box_generic_get_show_primary_text (GdMainBoxGeneric *self);
+GD_API
gboolean gd_main_box_generic_get_show_secondary_text (GdMainBoxGeneric *self);
+GD_API
void gd_main_box_generic_select_all (GdMainBoxGeneric *self);
+GD_API
void gd_main_box_generic_select_child (GdMainBoxGeneric *self, GdMainBoxChild *child);
+GD_API
void gd_main_box_generic_set_model (GdMainBoxGeneric *self, GListModel *model);
+GD_API
void gd_main_box_generic_set_selection_mode (GdMainBoxGeneric *self, gboolean selection_mode);
+GD_API
void gd_main_box_generic_set_show_primary_text (GdMainBoxGeneric *self, gboolean show_primary_text);
+GD_API
void gd_main_box_generic_set_show_secondary_text (GdMainBoxGeneric *self,
gboolean show_secondary_text);
+GD_API
void gd_main_box_generic_unselect_all (GdMainBoxGeneric *self);
+GD_API
void gd_main_box_generic_unselect_child (GdMainBoxGeneric *self, GdMainBoxChild *child);
+GD_API
void gd_main_box_generic_toggle_selection_for_child (GdMainBoxGeneric *self,
GdMainBoxChild *child,
gboolean select_range);
diff --git a/libgd/gd-main-box-item.h b/libgd/gd-main-box-item.h
index e37cb07..4c75f42 100644
--- a/libgd/gd-main-box-item.h
+++ b/libgd/gd-main-box-item.h
@@ -25,9 +25,12 @@
#include <cairo.h>
#include <glib-object.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_MAIN_BOX_ITEM gd_main_box_item_get_type()
+GD_API
G_DECLARE_INTERFACE (GdMainBoxItem, gd_main_box_item, GD, MAIN_BOX_ITEM, GObject)
struct _GdMainBoxItemInterface
@@ -42,12 +45,19 @@ struct _GdMainBoxItemInterface
cairo_surface_t * (* get_icon) (GdMainBoxItem *self);
};
+GD_API
const gchar * gd_main_box_item_get_id (GdMainBoxItem *self);
+GD_API
const gchar * gd_main_box_item_get_uri (GdMainBoxItem *self);
+GD_API
const gchar * gd_main_box_item_get_primary_text (GdMainBoxItem *self);
+GD_API
const gchar * gd_main_box_item_get_secondary_text (GdMainBoxItem *self);
+GD_API
cairo_surface_t * gd_main_box_item_get_icon (GdMainBoxItem *self);
+GD_API
gint64 gd_main_box_item_get_mtime (GdMainBoxItem *self);
+GD_API
gboolean gd_main_box_item_get_pulse (GdMainBoxItem *self);
G_END_DECLS
diff --git a/libgd/gd-main-box.h b/libgd/gd-main-box.h
index 1ff8038..c333597 100644
--- a/libgd/gd-main-box.h
+++ b/libgd/gd-main-box.h
@@ -25,9 +25,12 @@
#include <gio/gio.h>
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_MAIN_BOX gd_main_box_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdMainBox, gd_main_box, GD, MAIN_BOX, GtkBin)
typedef enum
@@ -41,19 +44,33 @@ struct _GdMainBoxClass
GtkBinClass parent_class;
};
+GD_API
GtkWidget * gd_main_box_new (GdMainBoxType type);
+GD_API
GdMainBoxType gd_main_box_get_box_type (GdMainBox *self);
+GD_API
GListModel * gd_main_box_get_model (GdMainBox *self);
+GD_API
GList * gd_main_box_get_selection (GdMainBox *self);
+GD_API
gboolean gd_main_box_get_selection_mode (GdMainBox *self);
+GD_API
gboolean gd_main_box_get_show_primary_text (GdMainBox *self);
+GD_API
gboolean gd_main_box_get_show_secondary_text (GdMainBox *self);
+GD_API
void gd_main_box_select_all (GdMainBox *self);
+GD_API
void gd_main_box_set_box_type (GdMainBox *self, GdMainBoxType type);
+GD_API
void gd_main_box_set_model (GdMainBox *self, GListModel *model);
+GD_API
void gd_main_box_set_selection_mode (GdMainBox *self, gboolean selection_mode);
+GD_API
void gd_main_box_set_show_primary_text (GdMainBox *self, gboolean show_primary_text);
+GD_API
void gd_main_box_set_show_secondary_text (GdMainBox *self, gboolean show_secondary_text);
+GD_API
void gd_main_box_unselect_all (GdMainBox *self);
G_END_DECLS
diff --git a/libgd/gd-main-icon-box-child.h b/libgd/gd-main-icon-box-child.h
index 40eb271..a1b57f0 100644
--- a/libgd/gd-main-icon-box-child.h
+++ b/libgd/gd-main-icon-box-child.h
@@ -29,6 +29,7 @@
G_BEGIN_DECLS
#define GD_TYPE_MAIN_ICON_BOX_CHILD gd_main_icon_box_child_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdMainIconBoxChild, gd_main_icon_box_child, GD, MAIN_ICON_BOX_CHILD, GtkFlowBoxChild)
struct _GdMainIconBoxChildClass
@@ -36,6 +37,7 @@ struct _GdMainIconBoxChildClass
GtkFlowBoxChildClass parent_class;
};
+GD_API
GtkWidget * gd_main_icon_box_child_new (GdMainBoxItem *item, gboolean selection_mode);
G_END_DECLS
diff --git a/libgd/gd-main-icon-box-icon.h b/libgd/gd-main-icon-box-icon.h
index 7189e0e..4bc01f2 100644
--- a/libgd/gd-main-icon-box-icon.h
+++ b/libgd/gd-main-icon-box-icon.h
@@ -29,10 +29,14 @@
G_BEGIN_DECLS
#define GD_TYPE_MAIN_ICON_BOX_ICON gd_main_icon_box_icon_get_type()
+GD_API
G_DECLARE_FINAL_TYPE (GdMainIconBoxIcon, gd_main_icon_box_icon, GD, MAIN_ICON_BOX_ICON, GtkDrawingArea)
+GD_API
GtkWidget * gd_main_icon_box_icon_new (GdMainBoxItem *item);
+GD_API
GdMainBoxItem * gd_main_icon_box_icon_get_item (GdMainIconBoxIcon *self);
+GD_API
void gd_main_icon_box_icon_set_item (GdMainIconBoxIcon *self, GdMainBoxItem *item);
G_END_DECLS
diff --git a/libgd/gd-main-icon-box.h b/libgd/gd-main-icon-box.h
index 5dc60fe..3307ea5 100644
--- a/libgd/gd-main-icon-box.h
+++ b/libgd/gd-main-icon-box.h
@@ -24,9 +24,12 @@
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_MAIN_ICON_BOX gd_main_icon_box_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdMainIconBox, gd_main_icon_box, GD, MAIN_ICON_BOX, GtkFlowBox)
struct _GdMainIconBoxClass
@@ -37,6 +40,7 @@ struct _GdMainIconBoxClass
gboolean (* move_cursor) (GdMainIconBox *self, GtkMovementStep step, gint count);
};
+GD_API
GtkWidget * gd_main_icon_box_new (void);
G_END_DECLS
diff --git a/libgd/gd-main-icon-view.h b/libgd/gd-main-icon-view.h
index c93e279..62def4b 100644
--- a/libgd/gd-main-icon-view.h
+++ b/libgd/gd-main-icon-view.h
@@ -25,9 +25,12 @@
#include <glib-object.h>
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_MAIN_ICON_VIEW gd_main_icon_view_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdMainIconView, gd_main_icon_view, GD, MAIN_ICON_VIEW, GtkIconView)
struct _GdMainIconViewClass
@@ -35,6 +38,7 @@ struct _GdMainIconViewClass
GtkIconViewClass parent_class;
};
+GD_API
GtkWidget * gd_main_icon_view_new (void);
G_END_DECLS
diff --git a/libgd/gd-main-list-view.h b/libgd/gd-main-list-view.h
index 317e9c4..37cea1f 100644
--- a/libgd/gd-main-list-view.h
+++ b/libgd/gd-main-list-view.h
@@ -25,6 +25,8 @@
#include <glib-object.h>
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_MAIN_LIST_VIEW gd_main_list_view_get_type()
@@ -65,10 +67,13 @@ struct _GdMainListViewClass
GtkTreeViewClass parent_class;
};
+GD_API
GType gd_main_list_view_get_type (void) G_GNUC_CONST;
+GD_API
GtkWidget * gd_main_list_view_new (void);
+GD_API
void gd_main_list_view_add_renderer (GdMainListView *self,
GtkCellRenderer *renderer,
GtkTreeCellDataFunc func,
diff --git a/libgd/gd-main-view-generic.h b/libgd/gd-main-view-generic.h
index dd53e0e..154cf18 100644
--- a/libgd/gd-main-view-generic.h
+++ b/libgd/gd-main-view-generic.h
@@ -23,9 +23,10 @@
#define __GD_MAIN_VIEW_GENERIC_H__
#include <glib-object.h>
-
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
typedef enum {
@@ -84,21 +85,30 @@ struct _GdMainViewGenericIface
gboolean selection_mode);
};
+GD_API
GType gd_main_view_generic_get_type (void) G_GNUC_CONST;
+GD_API
void gd_main_view_generic_set_model (GdMainViewGeneric *self,
GtkTreeModel *model);
+GD_API
GtkTreeModel * gd_main_view_generic_get_model (GdMainViewGeneric *self);
+GD_API
void gd_main_view_generic_scroll_to_path (GdMainViewGeneric *self,
GtkTreePath *path);
+GD_API
void gd_main_view_generic_set_selection_mode (GdMainViewGeneric *self,
gboolean selection_mode);
+GD_API
GtkTreePath * gd_main_view_generic_get_path_at_pos (GdMainViewGeneric *self,
gint x,
gint y);
+GD_API
void gd_main_view_generic_select_all (GdMainViewGeneric *self);
+GD_API
void gd_main_view_generic_unselect_all (GdMainViewGeneric *self);
+GD_API
void gd_main_view_generic_set_rubberband_range (GdMainViewGeneric *self,
GtkTreePath *start,
GtkTreePath *end);
diff --git a/libgd/gd-main-view.h b/libgd/gd-main-view.h
index 4f8afe7..e6459a9 100644
--- a/libgd/gd-main-view.h
+++ b/libgd/gd-main-view.h
@@ -23,12 +23,14 @@
#define __GD_MAIN_VIEW_H__
#include <glib-object.h>
-
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_MAIN_VIEW gd_main_view_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdMainView, gd_main_view, GD, MAIN_VIEW, GtkScrolledWindow)
typedef enum {
@@ -40,24 +42,35 @@ struct _GdMainViewClass {
GtkScrolledWindowClass parent_class;
};
+GD_API
GdMainView * gd_main_view_new (GdMainViewType type);
+GD_API
void gd_main_view_set_view_type (GdMainView *self,
GdMainViewType type);
+GD_API
GdMainViewType gd_main_view_get_view_type (GdMainView *self);
+GD_API
void gd_main_view_set_selection_mode (GdMainView *self,
gboolean selection_mode);
+GD_API
gboolean gd_main_view_get_selection_mode (GdMainView *self);
+GD_API
GList * gd_main_view_get_selection (GdMainView *self);
+GD_API
void gd_main_view_select_all (GdMainView *self);
+GD_API
void gd_main_view_unselect_all (GdMainView *self);
+GD_API
GtkTreeModel * gd_main_view_get_model (GdMainView *self);
+GD_API
void gd_main_view_set_model (GdMainView *self,
GtkTreeModel *model);
+GD_API
GtkWidget * gd_main_view_get_generic_view (GdMainView *self);
G_END_DECLS
diff --git a/libgd/gd-margin-container.h b/libgd/gd-margin-container.h
index 3937ea7..76798b2 100644
--- a/libgd/gd-margin-container.h
+++ b/libgd/gd-margin-container.h
@@ -23,9 +23,10 @@
#define _GD_MARGIN_CONTAINER_H
#include <glib-object.h>
-
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_MARGIN_CONTAINER gd_margin_container_get_type()
@@ -66,8 +67,10 @@ struct _GdMarginContainerClass
GtkBinClass parent_class;
};
+GD_API
GType gd_margin_container_get_type (void) G_GNUC_CONST;
+GD_API
GdMarginContainer *gd_margin_container_new (void);
G_END_DECLS
diff --git a/libgd/gd-notification.h b/libgd/gd-notification.h
index 8efa191..0a36298 100644
--- a/libgd/gd-notification.h
+++ b/libgd/gd-notification.h
@@ -26,6 +26,8 @@
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_NOTIFICATION (gd_notification_get_type ())
@@ -53,12 +55,17 @@ struct _GdNotification {
GdNotificationPrivate *priv;
};
+GD_API
GType gd_notification_get_type (void) G_GNUC_CONST;
+GD_API
GtkWidget *gd_notification_new (void);
+GD_API
void gd_notification_set_timeout (GdNotification *notification,
gint timeout_sec);
+GD_API
void gd_notification_dismiss (GdNotification *notification);
+GD_API
void gd_notification_set_show_close_button (GdNotification *notification,
gboolean show_close_button);
diff --git a/libgd/gd-styled-text-renderer.h b/libgd/gd-styled-text-renderer.h
index 42f606b..2b761df 100644
--- a/libgd/gd-styled-text-renderer.h
+++ b/libgd/gd-styled-text-renderer.h
@@ -23,12 +23,14 @@
#define _GD_STYLED_TEXT_RENDERER_H
#include <glib-object.h>
-
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_STYLED_TEXT_RENDERER gd_styled_text_renderer_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdStyledTextRenderer,
gd_styled_text_renderer,
GD,
@@ -40,9 +42,12 @@ struct _GdStyledTextRendererClass
GtkCellRendererTextClass parent_class;
};
+GD_API
GtkCellRenderer *gd_styled_text_renderer_new (void);
+GD_API
void gd_styled_text_renderer_add_class (GdStyledTextRenderer *self,
const gchar *class);
+GD_API
void gd_styled_text_renderer_remove_class (GdStyledTextRenderer *self,
const gchar *class);
diff --git a/libgd/gd-tagged-entry.h b/libgd/gd-tagged-entry.h
index ba9f673..d486df5 100644
--- a/libgd/gd-tagged-entry.h
+++ b/libgd/gd-tagged-entry.h
@@ -24,9 +24,10 @@
#define __GD_TAGGED_ENTRY_H__
#include <glib-object.h>
-
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_TAGGED_ENTRY gd_tagged_entry_get_type()
@@ -75,40 +76,56 @@ struct _GdTaggedEntryTagClass
GObjectClass parent_class;
};
+GD_API
GType gd_tagged_entry_get_type (void) G_GNUC_CONST;
+GD_API
GdTaggedEntry *gd_tagged_entry_new (void);
+GD_API
void gd_tagged_entry_set_tag_button_visible (GdTaggedEntry *self,
gboolean visible);
+GD_API
gboolean gd_tagged_entry_get_tag_button_visible (GdTaggedEntry *self);
+GD_API
gboolean gd_tagged_entry_insert_tag (GdTaggedEntry *self,
GdTaggedEntryTag *tag,
gint position);
+GD_API
gboolean gd_tagged_entry_add_tag (GdTaggedEntry *self,
GdTaggedEntryTag *tag);
+GD_API
gboolean gd_tagged_entry_remove_tag (GdTaggedEntry *self,
GdTaggedEntryTag *tag);
+GD_API
GType gd_tagged_entry_tag_get_type (void) G_GNUC_CONST;
+GD_API
GdTaggedEntryTag *gd_tagged_entry_tag_new (const gchar *label);
+GD_API
void gd_tagged_entry_tag_set_label (GdTaggedEntryTag *tag,
const gchar *label);
+GD_API
const gchar *gd_tagged_entry_tag_get_label (GdTaggedEntryTag *tag);
+GD_API
void gd_tagged_entry_tag_set_has_close_button (GdTaggedEntryTag *tag,
gboolean has_close_button);
+GD_API
gboolean gd_tagged_entry_tag_get_has_close_button (GdTaggedEntryTag *tag);
+GD_API
void gd_tagged_entry_tag_set_style (GdTaggedEntryTag *tag,
const gchar *style);
+GD_API
const gchar *gd_tagged_entry_tag_get_style (GdTaggedEntryTag *tag);
+GD_API
gboolean gd_tagged_entry_tag_get_area (GdTaggedEntryTag *tag,
cairo_rectangle_int_t *rect);
diff --git a/libgd/gd-toggle-pixbuf-renderer.h b/libgd/gd-toggle-pixbuf-renderer.h
index 93f4429..0954bc3 100644
--- a/libgd/gd-toggle-pixbuf-renderer.h
+++ b/libgd/gd-toggle-pixbuf-renderer.h
@@ -23,12 +23,14 @@
#define _GD_TOGGLE_PIXBUF_RENDERER_H
#include <glib-object.h>
-
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_TOGGLE_PIXBUF_RENDERER gd_toggle_pixbuf_renderer_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdTogglePixbufRenderer,
gd_toggle_pixbuf_renderer,
GD,
@@ -40,6 +42,7 @@ struct _GdTogglePixbufRendererClass
GtkCellRendererPixbufClass parent_class;
};
+GD_API
GtkCellRenderer *gd_toggle_pixbuf_renderer_new (void);
G_END_DECLS
diff --git a/libgd/gd-two-lines-renderer.h b/libgd/gd-two-lines-renderer.h
index 113191b..d7d3a2d 100644
--- a/libgd/gd-two-lines-renderer.h
+++ b/libgd/gd-two-lines-renderer.h
@@ -23,12 +23,14 @@
#define _GD_TWO_LINES_RENDERER_H
#include <glib-object.h>
-
#include <gtk/gtk.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
#define GD_TYPE_TWO_LINES_RENDERER gd_two_lines_renderer_get_type()
+GD_API
G_DECLARE_DERIVABLE_TYPE (GdTwoLinesRenderer, gd_two_lines_renderer, GD, TWO_LINES_RENDERER, GtkCellRendererText)
struct _GdTwoLinesRendererClass
@@ -36,6 +38,7 @@ struct _GdTwoLinesRendererClass
GtkCellRendererTextClass parent_class;
};
+GD_API
GtkCellRenderer *gd_two_lines_renderer_new (void);
G_END_DECLS
diff --git a/libgd/gd-types-catalog.h b/libgd/gd-types-catalog.h
index fc99416..754635c 100644
--- a/libgd/gd-types-catalog.h
+++ b/libgd/gd-types-catalog.h
@@ -22,8 +22,11 @@
#include <glib-object.h>
+#include "gd-macros.h"
+
G_BEGIN_DECLS
+GD_API
void gd_ensure_types (void);
G_END_DECLS
diff --git a/libgd/gd.h b/libgd/gd.h
index 69685c9..0afa4cd 100644
--- a/libgd/gd.h
+++ b/libgd/gd.h
@@ -24,6 +24,7 @@
G_BEGIN_DECLS
+#include <libgd/gd-macros.h>
#include <libgd/gd-types-catalog.h>
#ifdef LIBGD_GTK_HACKS