diff options
Diffstat (limited to 'sync/src/sync_item.h')
-rw-r--r-- | sync/src/sync_item.h | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/sync/src/sync_item.h b/sync/src/sync_item.h new file mode 100644 index 0000000..f7a4930 --- /dev/null +++ b/sync/src/sync_item.h @@ -0,0 +1,77 @@ + +#ifndef SYNC_ITEM_H +#define SYNC_ITEM_H + +#include <glib.h> +#include <glib-object.h> +#include <opensync/opensync.h> + +G_BEGIN_DECLS + +#define SYNC_TYPE_ITEM sync_item_get_type() + +#define SYNC_ITEM(obj) \ + (G_TYPE_CHECK_INSTANCE_CAST ((obj), \ + SYNC_TYPE_ITEM, SyncItem)) + +#define SYNC_ITEM_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_CAST ((klass), \ + SYNC_TYPE_ITEM, SyncItemClass)) + +#define SYNC_IS_ITEM(obj) \ + (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \ + SYNC_TYPE_ITEM)) + +#define SYNC_IS_ITEM_CLASS(klass) \ + (G_TYPE_CHECK_CLASS_TYPE ((klass), \ + SYNC_TYPE_ITEM)) + +#define SYNC_ITEM_GET_CLASS(obj) \ + (G_TYPE_INSTANCE_GET_CLASS ((obj), \ + SYNC_TYPE_ITEM, SyncItemClass)) + +typedef struct { + GObject parent; +} SyncItem; + +typedef struct { + GObjectClass parent_class; +} SyncItemClass; + +typedef OSyncMember * (*SyncItemMemberFunc) (SyncItem *item); +typedef void (*SyncItemDataFreeFunc) (gpointer data); + +GType sync_item_get_type (void); + +#include "sync_group.h" + +SyncItem * sync_item_new (const gchar * name, + const gchar * adr, + SyncItemMemberFunc member_func); +const gchar * sync_item_get_name (SyncItem * item); +const gchar * sync_item_get_adr (SyncItem * item); +gpointer sync_item_get_data (SyncItem * item); +OSyncMember * sync_item_get_member (SyncItem * item); +SyncGroup * sync_item_get_group (SyncItem * item); + +SyncItemDataFreeFunc sync_item_get_data_free_func (SyncItem * item); +SyncItemMemberFunc sync_item_get_member_func (SyncItem * item); + +void sync_item_set_name (SyncItem * item, + const gchar * name); +void sync_item_set_adr (SyncItem * item, + const gchar * adr); +void sync_item_set_data (SyncItem * item, + gpointer data); +void sync_item_set_data_free_func (SyncItem * item, + SyncItemDataFreeFunc data_free_func); +void sync_item_set_member_func (SyncItem * item, + SyncItemMemberFunc member_func); +void sync_item_set_group (SyncItem * item, + SyncGroup * group); + +void sync_item_ungroup (SyncItem * item); + +G_END_DECLS + +#endif |