]> git.draconx.ca Git - gob-dx.git/blobdiff - src/test.gob
Release 0.92.0
[gob-dx.git] / src / test.gob
index f7fbf8d1f7b5b7f46c9f6e1a9d7c3b02b575c639..d606d624d3abbb0cdce4f9415f5c52144e052c70 100644 (file)
@@ -1,5 +1,11 @@
 %{
 #include <stdio.h>
+/* the next line is not mandatory, but if gob finds an include in one of
+   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"
 
 static void jjjj(void);
 %}
@@ -14,17 +20,19 @@ class Gtk:Weird:Button from Gtk:Button {
        private int j;
        public GtkWidget * h;
        public char *bleh;
+       public double array[23][18];
+       protected unsigned long int wagawaga;
+       public int wagawaga_should_be_after_this_in_the_header;
 
        init(object) {
-               GtkWeirdButton *but = GTK_WEIRD_BUTTON(object);
-               but->i=0;
+               object->i=0;
        }
        class_init(klass);
        public GtkWidget * new(int j (check > 0)) {
                GtkWidget *ret;
                ret = GTK_WIDGET (GET_NEW);
 
-               GTK_WEIRD_BUTTON(ret)->j = j;
+               GTK_WEIRD_BUTTON(ret)->_priv->j = j;
 
                return ret;
        }
@@ -38,6 +46,12 @@ class Gtk:Weird:Button from Gtk:Button {
                        int h (check > 0)) {
                return blah(self,wid,h);
        }
+       signal last INT (POINTER, INT)
+       int bleh2(self, Gtk:Widget * wid (check null type),
+                       int h (check > 0)) {
+               /* testing multiple marshaller support */
+               return 0;
+       }
        signal first NONE (NONE)
        void bloh(self);
        virtual void * bah(self, int h (check > 0)) onerror NULL {
@@ -62,15 +76,88 @@ class Gtk:Weird:Button from Gtk:Button {
        signal first private NONE (NONE)
        void googlegoogle2(self)
        {
+               int array[5][8][9]={{{0}}};
                puts("TEST2");
-               testprivvirtual(self);
+               testprivvirtual(self,array);
+       }
+       private signal first NONE (NONE)
+       void googlegoogle3(self)
+       {
+               puts("TEST3");
+       }
+       protected signal first NONE (NONE)
+       void googlegoogle4(self)
+       {
+               puts("TEST4");
        }
        virtual private
-       void testprivvirtual(self)
+       void testprivvirtual(self, int some_array[5][8][9])
        {
                puts("TEST3");
                googlegoogle(self);
        }
+       private virtual
+       void testprivvirtual2(self, int some_array[5][8][9])
+       {
+               /* nothing here */
+       }
+       public virtual
+       void testpublicvirtual(self, int some_array[5][8][9])
+       {
+               /* nothing here */
+       }
+       protected virtual
+       void testprotectedvirtual(self, int some_array[5][8][9])
+       {
+               /* nothing here */
+       }
+       signal first NONE (POINTER)
+       void testarrsignal(self, long arr[8])
+       {
+               /* foo */
+       }
+
+       /* testing empty func */
+       public void foofoofoo(self) {}
+       /* testing empty func 2 */
+       public void foofoofoo2(self);
+       /* testing empty func 3 */
+       public void foofoofoo3(self) {   }
+       /* testing empty func 4 */
+       public void foofoofoo4(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));
+
+       protected
+       int foobar(self) {
+               /* just an empty function */
+               return 5;
+       }
+
+       signal last NONE(CHAR,UCHAR,BOOL,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)
+       {
+               /* ugh, testing casting */
+       }
 }
 
 %{