X-Git-Url: http://git.draconx.ca/gitweb/gob-dx.git/blobdiff_plain/714b58ab4606ed4d40cec3702cb378938f8c883f..7231d76fbf4ae0b501af648e1216b88714aa7353:/src/test.gob diff --git a/src/test.gob b/src/test.gob index 9ea1d90..8c7cf85 100644 --- a/src/test.gob +++ b/src/test.gob @@ -3,7 +3,7 @@ look in here to see a whole array of different syntax options, but don't expect this to be an easy to read file */ -requires 0.93.0 +requires 1.99.0 %at{ /* ALL TOP */ @@ -30,8 +30,8 @@ requires 0.93.0 the %{ %} sections above the class definitions, it will not put it in the file itself. So you can this way select where the include file is at */ -#include "gtk-weird-button.h" -#include "gtk-weird-button-private.h" +#include "test-object.h" +#include "test-object-private.h" /* this is to test if the lexer won't get confused by requires inside some c code @@ -39,6 +39,8 @@ requires 99.99.99 */ static void jjjj(void); + +#define _(x) x %} %h{ @@ -59,7 +61,7 @@ void bubu(void); #define TEST_ARRAY 5 %} -class Gtk:Weird:Button from Gtk:Button { +class Test:Object from G:Object { public int test_array[TEST_ARRAY]; public int i; @@ -72,21 +74,21 @@ class Gtk:Weird:Button from Gtk:Button { destroywith g_free; argument POINTER testingstring stringlink; - public Gtk:Weird:Button * testingobj - destroywith gtk_object_unref; + public Test:Object * testingobj + destroywith g_object_unref; argument POINTER testingobj objectlink; classwide int foo = 20; argument INT foo link; - public Gtk:Object * testingobj2 + public G:Object * testingobj2 destroy { if(VAR) - gtk_object_unref(GTK_OBJECT(VAR)); + g_object_unref(G_OBJECT(VAR)); }; - argument POINTER (type Gtk:Object *) testingobj2 objectlink; + argument POINTER (type G:Object *) testingobj2 objectlink; - argument POINTER (type GtkObject *) some_object + argument POINTER (type GObject *) some_object set { /* set some_object */ } get { /* get some_object */ ARG=NULL; }; @@ -95,8 +97,32 @@ class Gtk:Weird:Button from Gtk:Button { argument POINTER (type char *) read_only_string get { /* get readonly_long */ ARG = g_strdup("BLAH"); }; + + private char a_property; + property CHAR a_property + (nick = _("Nick"), + blurb = _("Blurb"), + minimum = 'a', + maximum = 'Z', + default_value = 'C', + export) + set { self->_priv->a_property = g_value_get_char (VAL); } + get { g_value_set_char (VAL, self->_priv->a_property); }; + + + private char *b_property; + property STRING b_property + (nick = _("Nick b"), + blurb = _("Blurb b"), + default_value = "default", + type = char *, + flags = CONSTRUCT, + export, + link); + + private int j; - public GtkWidget * h; + public GObject * h; public char *bleh; public double array[23][18]; protected unsigned long int wagawaga; @@ -115,21 +141,19 @@ class Gtk:Weird:Button from Gtk:Button { * * Returns: new object */ - public GtkWidget * new(int j (check > 0)) { - GtkWidget *ret; - ret = GTK_WIDGET (GET_NEW); + public GObject * new(int j (check > 0)) { + GObject *ret; + ret = G_OBJECT (GET_NEW); SELF(ret)->_priv->j = j; return ret; } - private int _blah(self, Gtk:Widget * wid (check null type), + private int blah(self, G:Object * wid (check null type), int h (check > 0)) onerror -1 { - gtk_container_add(GTK_CONTAINER(self),wid); - - gtk_object_set(GTK_OBJECT(self), - GTK_WEIRD_BUTTON_ARG_I(99), - NULL); + g_object_set (G_OBJECT (self), + TEST_OBJECT_PROP_I (99), + NULL); return h; } /** @@ -142,15 +166,15 @@ class Gtk:Weird:Button from Gtk:Button { * * Returns: new object **/ - signal last INT (POINTER, INT) - int bleh(self, Gtk:Widget * wid (check null type), + signal last STRING (POINTER, INT) + char * bleh(self, G:Object * wid (check null type), int h (check > 0)) { - return _blah(self,wid,h); + return self_blah(self,wid,h) > 0 ? g_strdup ("foo") : g_strdup ("bar"); } private int - test_handler (self, GtkWidget *w, int h, gpointer data) + test_handler (self, GObject *w, int h, gpointer data) { return -1; } @@ -165,11 +189,11 @@ class Gtk:Weird:Button from Gtk:Button { * * Returns: new object */ signal last INT (POINTER, INT) - int bleh2(self, const Gtk:Widget * wid (check null type), + int bleh2(self, const G:Object * wid (check null type), int h (check > 0)) { - gtk_signal_connect (GTK_OBJECT (self), + /*gtk_signal_connect (GTK_OBJECT (self), GTK_WEIRD_BUTTON_SIGNAL_BLEH (test_handler), - NULL); + NULL);*/ /* testing multiple marshaller support */ return 0; @@ -201,14 +225,14 @@ class Gtk:Weird:Button from Gtk:Button { signal first NONE (NONE) void bloh(self); virtual void * bah(self, int h (check > 0)) onerror NULL defreturn 0 { - beh(self,h); + self_beh(self,h); return NULL; } virtual int beh(self, int h (check > 0)); - override(Gtk:Container) void add(Gtk:Container * self (check null type), + /*override(G:Object) void add(Gtk:Container * self (check null type), Gtk:Widget * wid (check null type)) { PARENT_HANDLER(self,wid); - } + }*/ public int consttest(self, const gchar *text, ...) { return 25; @@ -217,7 +241,7 @@ class Gtk:Weird:Button from Gtk:Button { { return 25; } - public int consttest3(self, Gtk:Widget const *wid (check null type)) + public int consttest3(self, G:Object const *wid (check null type)) { return 25; } @@ -241,7 +265,7 @@ class Gtk:Weird:Button from Gtk:Button { { Self const *selfconst1, *selfconst2; selfconst1 = SELF_CONST(self); - selfconst2 = GTK_WEIRD_BUTTON_CONST(self); + selfconst2 = TEST_OBJECT_CONST(self); return 25; } public int consttest9(const self, int i, double b) @@ -256,7 +280,7 @@ class Gtk:Weird:Button from Gtk:Button { void googlegoogle(self) { puts("TEST1"); - googlegoogle2(self); + self_googlegoogle2(self); } signal first private NONE (NONE) void googlegoogle2(self) @@ -264,7 +288,7 @@ class Gtk:Weird:Button from Gtk:Button { int array[5][8][9]={{{0}}}; Self *foo = self; puts("TEST2"); - testprivvirtual(foo, array); + self_testprivvirtual(foo, array); } private signal first NONE (NONE) void googlegoogle3(self) @@ -290,7 +314,7 @@ class Gtk:Weird:Button from Gtk:Button { void testprivvirtual(self, int some_array[5][8][9]) { puts("TEST3"); - googlegoogle(self); + self_googlegoogle(self); } private virtual void testprivvirtual2(self, const int some_array[5][8][9]) @@ -324,28 +348,28 @@ class Gtk:Weird:Button from Gtk:Button { { } - override (Gtk:Widget) - int event(Gtk:Widget *self (check null type), - GdkEvent *event (check null)) onerror FALSE - { - int ret; - /* some code */ - ret = PARENT_HANDLER(self,event); - /* some code */ - return ret; - } - override(Gtk:Container) - void - remove(Gtk:Container * self (check null type), - Gtk:Widget * wid (check null type)); - - override(Gtk:Object) - void - destroy(Gtk:Object * self (check null type)) - { - /* foo bar */ - PARENT_HANDLER(self); - } +// override (Gtk:Widget) +// int event(Gtk:Widget *self (check null type), +// GdkEvent *event (check null)) onerror FALSE +// { +// int ret; +// /* some code */ +// ret = PARENT_HANDLER(self,event); +// /* some code */ +// return ret; +// } +// override(Gtk:Container) +// void +// remove(Gtk:Container * self (check null type), +// Gtk:Widget * wid (check null type)); +// +// override(Gtk:Object) +// void +// destroy(Gtk:Object * self (check null type)) +// { +// /* foo bar */ +// PARENT_HANDLER(self); +// } protected int foobar(self) { @@ -353,12 +377,12 @@ class Gtk:Weird:Button from Gtk:Button { return 5; } - signal last NONE(CHAR,UCHAR,BOOL,INT,UINT,LONG,ULONG,FLOAT,DOUBLE, + signal last NONE(CHAR,UCHAR,BOOLEAN,INT,UINT,LONG,ULONG,FLOAT,DOUBLE, STRING,ENUM,FLAGS,BOXED,POINTER,OBJECT) void testargs(self, gchar a, guchar b, gboolean c, gint d, guint e, glong f, gulong g, gfloat h, gdouble i, gchar * j, gint k, - guint l, gpointer m, gpointer o, GtkObject *p) + guint l, gpointer m, gpointer o, GObject *p) { /* ugh, testing casting */ } @@ -370,7 +394,7 @@ class Gtk:Weird:Button from Gtk:Button { } /* testing NONE */ - signal BOOL (NONE) + signal BOOLEAN (NONE) gboolean test_none_thing (self) { @@ -404,7 +428,7 @@ class Gtk:Weird:Button from Gtk:Button { /* testing calling the above method */ public void foo (self) { - method_with_no_arguments (); + self_method_with_no_arguments (); } /* this is to test custom get_type */