summary refs log tree commit diff stats
path: root/lib/oldwrappers/gtk/libglade2.nim
blob: 5e323680e4cdfd47115c247ad46da6fc9155af6f (plain) (blame)
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
{.deadCodeElim: on.}

import
  glib2, gtk2

when defined(win32):
  const
    LibGladeLib = "libglade-2.0-0.dll"
else:
  const
    LibGladeLib = "libglade-2.0.so"
type
  PLongint* = ptr int32
  PSmallInt* = ptr int16
  PByte* = ptr int8
  PWord* = ptr int16
  PDWord* = ptr int32
  PDouble* = ptr float64

proc glade_init*(){.cdecl, dynlib: LibGladeLib, importc: "glade_init".}
proc glade_require*(TheLibrary: cstring){.cdecl, dynlib: LibGladeLib,
    importc: "glade_require".}
proc glade_provide*(TheLibrary: cstring){.cdecl, dynlib: LibGladeLib,
    importc: "glade_provide".}
type
  PGladeXMLPrivate* = pointer
  PGladeXML* = ptr TGladeXML
  TGladeXML* = object of TGObject
    filename*: cstring
    priv*: PGladeXMLPrivate

  PGladeXMLClass* = ptr TGladeXMLClass
  TGladeXMLClass* = object of TGObjectClass

  TGladeXMLConnectFunc* = proc (handler_name: cstring, anObject: PGObject,
                                signal_name: cstring, signal_data: cstring,
                                connect_object: PGObject, after: gboolean,
                                user_data: gpointer){.cdecl.}

proc GLADE_TYPE_XML*(): GType
proc GLADE_XML*(obj: pointer): PGladeXML
proc GLADE_XML_CLASS*(klass: pointer): PGladeXMLClass
proc GLADE_IS_XML*(obj: pointer): gboolean
proc GLADE_IS_XML_CLASS*(klass: pointer): gboolean
proc GLADE_XML_GET_CLASS*(obj: pointer): PGladeXMLClass
proc glade_xml_get_type*(): GType{.cdecl, dynlib: LibGladeLib,
                                   importc: "glade_xml_get_type".}
proc glade_xml_new*(fname: cstring, root: cstring, domain: cstring): PGladeXML{.
    cdecl, dynlib: LibGladeLib, importc: "glade_xml_new".}
proc glade_xml_new_from_buffer*(buffer: cstring, size: int32, root: cstring,
                                domain: cstring): PGladeXML{.cdecl,
    dynlib: LibGladeLib, importc: "glade_xml_new_from_buffer".}
proc glade_xml_construct*(self: PGladeXML, fname: cstring, root: cstring,
                          domain: cstring): gboolean{.cdecl,
    dynlib: LibGladeLib, importc: "glade_xml_construct".}
proc glade_xml_signal_connect*(self: PGladeXML, handlername: cstring,
                               func: TGCallback){.cdecl, dynlib: LibGladeLib,
    importc: "glade_xml_signal_connect".}
proc glade_xml_signal_connect_data*(self: PGladeXML, handlername: cstring,
                                    func: TGCallback, user_data: gpointer){.
    cdecl, dynlib: LibGladeLib, importc: "glade_xml_signal_connect_data".}
proc glade_xml_signal_autoconnect*(self: PGladeXML){.cdecl, dynlib: LibGladeLib,
    importc: "glade_xml_signal_autoconnect".}
proc glade_xml_signal_connect_full*(self: PGladeXML, handler_name: cstring,
                                    func: TGladeXMLConnectFunc,
                                    user_data: gpointer){.cdecl,
    dynlib: LibGladeLib, importc: "glade_xml_signal_connect_full".}
proc glade_xml_signal_autoconnect_full*(self: PGladeXML,
                                        func: TGladeXMLConnectFunc,
                                        user_data: gpointer){.cdecl,
    dynlib: LibGladeLib, importc: "glade_xml_signal_autoconnect_full".}
proc glade_xml_get_widget*(self: PGladeXML, name: cstring): PGtkWidget{.cdecl,
    dynlib: LibGladeLib, importc: "glade_xml_get_widget".}
proc glade_xml_get_widget_prefix*(self: PGladeXML, name: cstring): PGList{.
    cdecl, dynlib: LibGladeLib, importc: "glade_xml_get_widget_prefix".}
proc glade_xml_relative_file*(self: PGladeXML, filename: cstring): cstring{.cdecl,
    dynlib: LibGladeLib, importc: "glade_xml_relative_file".}
proc glade_get_widget_name*(widget: PGtkWidget): cstring{.cdecl,
    dynlib: LibGladeLib, importc: "glade_get_widget_name".}
proc glade_get_widget_tree*(widget: PGtkWidget): PGladeXML{.cdecl,
    dynlib: LibGladeLib, importc: "glade_get_widget_tree".}
type
  PGladeXMLCustomWidgetHandler* = ptr TGladeXMLCustomWidgetHandler
  TGladeXMLCustomWidgetHandler* = TGtkWidget

proc glade_set_custom_handler*(handler: TGladeXMLCustomWidgetHandler,
                               user_data: gpointer){.cdecl, dynlib: LibGladeLib,
    importc: "glade_set_custom_handler".}
proc glade_gnome_init*() =
  glade_init()

proc glade_bonobo_init*() =
  glade_init()

proc glade_xml_new_with_domain*(fname: cstring, root: cstring, domain: cstring): PGladeXML =
  result = glade_xml_new(fname, root, domain)

proc glade_xml_new_from_memory*(buffer: cstring, size: int32, root: cstring,
                                domain: cstring): PGladeXML =
  result = glade_xml_new_from_buffer(buffer, size, root, domain)

proc GLADE_TYPE_XML*(): GType =
  result = glade_xml_get_type()

proc GLADE_XML*(obj: pointer): PGladeXML =
  result = cast[PGladeXML](G_TYPE_CHECK_INSTANCE_CAST(obj, GLADE_TYPE_XML()))

proc GLADE_XML_CLASS*(klass: pointer): PGladeXMLClass =
  result = cast[PGladeXMLClass](G_TYPE_CHECK_CLASS_CAST(klass, GLADE_TYPE_XML()))

proc GLADE_IS_XML*(obj: pointer): gboolean =
  result = G_TYPE_CHECK_INSTANCE_TYPE(obj, GLADE_TYPE_XML())

proc GLADE_IS_XML_CLASS*(klass: pointer): gboolean =
  result = G_TYPE_CHECK_CLASS_TYPE(klass, GLADE_TYPE_XML())

proc GLADE_XML_GET_CLASS*(obj: pointer): PGladeXMLClass =
  result = cast[PGladeXMLClass](G_TYPE_INSTANCE_GET_CLASS(obj, GLADE_TYPE_XML()))