From 9b6dcf5696d59e6b6004b8631f4a136f5b90c1d5 Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Thu, 11 Jun 2009 12:01:59 -0500 Subject: Providing the first hints at an API --- src/status-provider.h | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/status-provider.h b/src/status-provider.h index 7d36f02..bbc86f6 100644 --- a/src/status-provider.h +++ b/src/status-provider.h @@ -13,19 +13,32 @@ G_BEGIN_DECLS #define IS_STATUS_PROVIDER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), STATUS_PROVIDER_TYPE)) #define STATUS_PROVIDER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), STATUS_PROVIDER_TYPE, StatusProviderClass)) - -typedef struct _StatusProviderClass StatusProviderClass; -struct _StatusProviderClass { - GObjectClass parent_class; -}; +#define STATUS_PROVIDER_SIGNAL_STATUS_CHANGED "status-changed" typedef struct _StatusProvider StatusProvider; struct _StatusProvider { GObject parent; }; +typedef struct _StatusProviderClass StatusProviderClass; +struct _StatusProviderClass { + /* Signals */ + void (*status_changed) (guint newstatus); + + /* Virtual Functions */ + void (*set_status) (StatusProvider * sp, guint newstatus); + guint (*get_status) (StatusProvider * sp); + + GObjectClass parent_class; +}; + GType status_provider_get_type (void); +void status_provider_set_status (StatusProvider * sp, guint status); +guint status_provider_get_status (StatusProvider * sp); + +void status_provider_emit_status_changed (StatusProvider * sp, guint newstatus); + G_END_DECLS #endif -- cgit v1.2.3