GnomeProperty API



Hi,

first attempt at the api for GnomeProperty done, so flame away! :)

Martijn

-----------------

/* gnome-property.h */
typedef struct {
	GnomeObject parent;

	gchar *name;
	gboolean stored;
	gboolean readonly;
	CORBA_TypeCode kind;
	gpointer value;
	gpointer default;
} GnomeProperty;

struct _GnomePropertyClass {
	GnomeObjectClass parent_class;
	/*
	 * override these if the type isn't a simple type
	 */
	void (*set_value) (GnomeProperty *property, CORBA_any *value);
	CORBA_any *(*get_value) (GnomeProperty *property);
	CORBA_any *(*get_default) (GnomeProperty *property);
} GnomePropertyClass;


GtkType        gnome_property_get_type     (void);
gchar         *gnome_property_get_name     (GnomeProperty  *property);
void           gnome_property_set_stored   (GnomeProperty  *property,
                                            gboolean        stored);
gboolean       gnome_property_is_stored    (GnomeProperty  *property);
void           gnome_property_set_readonly (GnomeProperty  *property,
                                            gboolean        readonly);
gboolean       gnome_property_is_readonly  (GnomeProperty  *property);

/* gnome-property-string.h */

typedef struct {
	GnomeProperty parent;
} GnomePropertyString;

struct _GnomePropertyClass {
	GnomePropertyClass parent_class;
} GnomePropertyStringClass;

GtkType gnome_property_string_get_type   (void);
GnomePropertyString *gnome_property_new  (gchar          *name);
gchar *gnome_property_string_get_value   (GnomeProperty  *property);
void   gnome_property_string_set_value   (GnomeProperty  *property,
                                          gchar          *value);
gchar *gnome_property_string_get_default (GnomeProperty  *property);
void   gnome_property_string_set_default (GnomeProperty  *property,
                                          gchar          *default);
/* gnome-property-client.h */

gchar         *gnome_property_client_get_name    (GnomeObjectClient *property);
CORBA_TypeCode gnome_property_client_get_kind    (GnomeObjectClient *property);
gboolean       gnome_property_client_is_readonly (GnomeObjectClient *property);
gboolean       gnome_property_client_is_stored   (GnomeObjectClient *property);

/* gnome-property-string-client.h */

gchar *gnome_property_string_client_get_value   (GnomeObjectClient *property);
void   gnome_property_string_client_set_value   (GnomeObjectClient *property,
                                                 gchar             *value);
gchar *gnome_property_string_client_get_default (GnomeObjectClient *property);


-- 
Martijn van Beers  <martijn@earthling.net>

'Don't worry if it sounds odd. Believe me, you are talking to
someone who has seen a lot of stuff that is odd. And I don't
mean biscuits.' --- Arthur Dent



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