diff options
| author | Simon van der Linden <svdlinden@src.gnome.org> | 2010-01-22 13:41:21 +0100 |
|---|---|---|
| committer | Simon van der Linden <svdlinden@src.gnome.org> | 2010-01-22 13:41:21 +0100 |
| commit | eaf7cb8ebb7e34f9493ac83b2f04af4dcf45f40f (patch) | |
| tree | 92c184f82369ffc181701450fe4045ac0cef2ef3 /tests/libtestgi.h | |
| parent | b11cf2595987c1f0fc4ffd834f07c98b92aa2355 (diff) | |
| download | pygi-eaf7cb8ebb7e34f9493ac83b2f04af4dcf45f40f.tar.gz pygi-eaf7cb8ebb7e34f9493ac83b2f04af4dcf45f40f.tar.xz pygi-eaf7cb8ebb7e34f9493ac83b2f04af4dcf45f40f.zip | |
Restore the overrides support
Add a ModuleProxy in front of the DynamicModule when an overrides module is
present. There is no need for an overrides module to be a class; it can just be a module.
Add an override decorator to override the wrapper of a registered type.
Adapt Gdk and Gtk accordingly.
Add tests.
https://bugzilla.gnome.org/show_bug.cgi?id=602830
Diffstat (limited to 'tests/libtestgi.h')
| -rw-r--r-- | tests/libtestgi.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/tests/libtestgi.h b/tests/libtestgi.h index 1620096..970d01b 100644 --- a/tests/libtestgi.h +++ b/tests/libtestgi.h @@ -662,4 +662,53 @@ gint *test_gi_int_return_ptr_null (void); void test_gi_int_in_ptr_null (gint *int_); +/* Overrides */ + +#define TESTGI_OVERRIDES_CONSTANT 42 + + +typedef struct { + glong long_; +} TestGIOverridesStruct; + +GType test_gi_overrides_struct_get_type (void) G_GNUC_CONST; + +TestGIOverridesStruct *test_gi_overrides_struct_new (void); + +glong test_gi_overrides_struct_method (TestGIOverridesStruct *struct_); + +TestGIOverridesStruct *test_gi__overrides_struct_return (void); + + +#define TESTGI_TYPE_OVERRIDES_OBJECT (test_gi_overrides_object_get_type ()) +#define TESTGI_OVERRIDES_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TESTGI_TYPE_OVERRIDES_OBJECT, TestGIOverridesObject)) +#define TESTGI_OVERRIDES_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TESTGI_TYPE_OVERRIDES_OBJECT, TestGIOverridesObjectClass)) +#define TESTGI_IS_OVERRIDES_OBJECT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TESTGI_TYPE_OVERRIDES_OBJECT)) +#define TESTGI_IS_OVERRIDES_OBJECT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TESTGI_TYPE_OVERRIDES_OBJECT)) +#define TESTGI_OVERRIDES_OBJECT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TESTGI_TYPE_OVERRIDES_OBJECT, TestGIOverridesObjectClass)) + +typedef struct _TestGIOverridesObjectClass TestGIOverridesObjectClass; +typedef struct _TestGIOverridesObject TestGIOverridesObject; + +struct _TestGIOverridesObjectClass +{ + GObjectClass parent_class; +}; + +struct _TestGIOverridesObject +{ + GObject parent_instance; + + glong long_; +}; + +GType test_gi_overrides_object_get_type (void) G_GNUC_CONST; + +TestGIOverridesObject *test_gi_overrides_object_new (void); + +glong test_gi_overrides_object_method (TestGIOverridesObject *object); + + +TestGIOverridesObject *test_gi__overrides_object_return (void); + #endif /* __TEST_GI_H__ */ |
