summaryrefslogtreecommitdiff
path: root/tests/object.test
blob: dfaf732b9bc7eec4123c8adce7b2dc2cfda81de8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<?xml version="1.0"?>
<repository version="1.0"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <namespace name="Foo">
    <class name="Object1" parent="Object2" glib:type-name="Object1" glib:get-type="object1_get_type">
      <implements>
        <interface name="Iface1" />
      </implements>
      <property name="prop1" readable="0" writable="0">
        <type name="int" c:type="gint"/>
      </property>
      <glib:signal name="signal1" when="LAST">
        <return-value> 
          <type name="boolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="obj" transfer="full" direction="in">
            <type name="Object1" c:type="Object1*"/>
	  </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="signal2" when="FIRST" no-recurse="1" detailed="1" action="1" no-hooks="1">
        <return-value> 
          <type name="void" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="obj" transfer="full" direction="in">
            <type name="Object1" c:type="Object1*"/>
	  </parameter>
        </parameters>
      </glib:signal>
      <vfunc name="vfunc1" offset="20">
        <return-value> 
          <type name="Object2" c:type="Object2*"/>
        </return-value>
        <parameters>
          <parameter name="param1" transfer="full" direction="in">
            <type name="Object1" c:type="Object1*"/>
	  </parameter>
        </parameters>
      </vfunc>
      <vfunc name="vfunc2" offset="24">
        <return-value> 
          <type name="Object2" c:type="Object2*"/>
        </return-value>
        <parameters>
          <parameter name="param1" transfer="full" direction="in">
            <type name="Object1" c:type="Object1*"/>
	  </parameter>
        </parameters>
      </vfunc>
    </class>
    <constant name="constant1" c:type="gint" value="42" />
    <interface name="Iface1" glib:type-name="Iface1" glib:get-type="iface1_get_type">
    </interface>
    <class name="Object2" parent="GObject.GObject" glib:type-name="Object2" glib:get-type="object2_get_type">
    </class>
  </namespace>
</repository>