13 SUB fillExpandTree
cdecl(
BYVAL Store
as GtkTreeStore
ptr,
byval UserData
as gpointer)
14 DIM AS ZSTRING PTR entries(...) = { _
15 @
"--> PUDT1 <* UDT1>=0" _
16 , @
"A < Integer> No valid value" _
18 , @
"A2 [ 0-5 ] <TYPE>" _
19 , @
"AAA <Integer>=0 " _
20 , @
"BBB <Ulongint>=0" _
21 , @
"B2 <EENUM>=0 >> Unknown Enum value" _
22 , @
"C2 <* Integer>=0" _
25 , @
"<EENUM>=0 >> Unknown Enum value" _
29 DIM AS GtkTreeIter iter(3)
31 gtk_tree_store_clear(Store)
33 gtk_tree_store_append(Store, @iter(0), NULL)
34 gtk_tree_store_set(Store, @iter(0), 0, entries(0), -1)
36 gtk_tree_store_append(Store, @iter(1), @iter(0))
37 gtk_tree_store_set(Store, @iter(1), 0, entries(1), -1)
39 gtk_tree_store_append(Store, @iter(1), @iter(0))
40 gtk_tree_store_set(Store, @iter(1), 0, entries(2), -1)
42 gtk_tree_store_append(Store, @iter(2), @iter(1))
43 gtk_tree_store_set(Store, @iter(2), 0, entries(3), -1)
45 gtk_tree_store_append(Store, @iter(3), @iter(2))
46 gtk_tree_store_set(Store, @iter(3), 0, entries(4), -1)
48 gtk_tree_store_append(Store, @iter(3), @iter(2))
49 gtk_tree_store_set(Store, @iter(3), 0, entries(5), -1)
51 gtk_tree_store_append(Store, @iter(2), @iter(1))
52 gtk_tree_store_set(Store, @iter(2), 0, entries(6), -1)
54 gtk_tree_store_append(Store, @iter(2), @iter(1))
55 gtk_tree_store_set(Store, @iter(2), 0, entries(6), -1)
57 gtk_tree_store_append(Store, @iter(3), @iter(2))
58 gtk_tree_store_set(Store, @iter(3), 0, entries(7), -1)
60 gtk_tree_store_append(Store, @iter(3), @iter(2))
61 gtk_tree_store_set(Store, @iter(3), 0, entries(8), -1)
63 gtk_tree_store_append(Store, @iter(2), @iter(1))
64 gtk_tree_store_set(Store, @iter(2), 0, entries(9), -1)
66 gtk_tree_store_append(Store, @iter(3), @iter(2))
67 gtk_tree_store_set(Store, @iter(3), 0, entries(10), -1)
69 gtk_tree_store_append(Store, @iter(1), @iter(0))
70 gtk_tree_store_set(Store, @iter(1), 0, entries(11), -1)
80 VAR fnam =
"expand.ui", fnr =
FREEFILE
81 IF OPEN(fnam
FOR INPUT AS fnr)
THEN
82 ?PROJ_NAME &
": Cannot open " & fnam :
END 1
85 Xml =
STRING(
LOF(fnr), 0)
89 ?" CONSTRUCTOR ExpandUdt"
93 SUB ExpandUdt.destroyAll()
97 DECLARE SUB on_expand_destroyed
CDECL ( _
98 BYVAL AS GtkWidget
PTR, _
109 SUB ExpandUdt.addXpd( _
110 BYVAL FillStore
AS SUB CDECL(
BYVAL AS GtkTreeStore
PTR,
BYVAL AS gpointer) _
111 ,
BYVAL UserData
AS gpointer)
113 VAR build = gtk_builder_new()
114 DIM AS GError
PTR meld
115 IF 0 = gtk_builder_add_from_string(build, Xml, -1, @meld)
THEN
117 ?PROJ_NAME &
": Fehler/Error (GTK-Builder in ExpandUdt.addXpd)"
123 var dia = gtk_builder_get_object(build,
"window1")
124 var gtv = gtk_builder_get_object(build,
"tviewExpand")
125 var store = gtk_builder_get_object(build,
"tstoreExpand")
126 gtk_builder_connect_signals(build, 0)
127 g_object_unref(build)
129 g_signal_connect(dia,
"destroy" _
130 , G_CALLBACK(@on_expand_destroyed), gtv)
132 gtk_window_set_title(GTK_WINDOW(dia),
"Expand")
133 FillStore(GTK_TREE_STORE(store), UserData)
134 gtk_tree_view_expand_all(GTK_TREE_VIEW(gtv))
136 List = g_slist_prepend(List, gtv)
139 DIM SHARED AS ExpandUdt
PTR XPD
143 SUB on_expand_destroyed
CDECL ALIAS "on_expand_destroyed" ( _
144 BYVAL Dia
AS GtkWidget
PTR, _
145 BYVAL Gtv
AS gpointer)
EXPORT
147 ?" --> callback on_expand_destroyed"
148 XPD->List = g_slist_remove(
XPD->List, Gtv)
152 SUB exp_watched_clicked
CDECL ALIAS "exp_watched_clicked" ( _
153 BYVAL Button
AS GtkButton
PTR, _
154 BYVAL user_data
AS gpointer)
EXPORT
156 ?" --> callback exp_watched_clicked"
161 SUB exp_dump_clicked
CDECL ALIAS "exp_dump_clicked" ( _
162 BYVAL Button
AS GtkButton
PTR, _
163 BYVAL user_data
AS gpointer)
EXPORT
165 ?" --> callback exp_dump_clicked"
170 SUB exp_edit_clicked
CDECL ALIAS "exp_edit_clicked" ( _
171 BYVAL Button
AS GtkButton
PTR, _
172 BYVAL user_data
AS gpointer)
EXPORT
174 ?" --> callback exp_edit_clicked"
179 SUB exp_show_clicked
CDECL ALIAS "exp_show_clicked" ( _
180 BYVAL Button
AS GtkButton
PTR, _
181 BYVAL user_data
AS gpointer)
EXPORT
183 ?" --> callback exp_show_clicked"
188 SUB exp_new_clicked
CDECL ALIAS "exp_new_clicked" ( _
189 BYVAL Button
AS GtkButton
PTR, _
190 BYVAL user_data
AS gpointer)
EXPORT
192 ?" --> callback exp_new_clicked"
193 XPD->addXpd(@fillExpandTree, NULL)
198 SUB exp_replace_clicked
CDECL ALIAS "exp_replace_clicked" ( _
199 BYVAL Button
AS GtkButton
PTR, _
200 BYVAL user_data
AS gpointer)
EXPORT
202 ?" --> callback exp_replace_clicked"
207 SUB exp_delta_m_clicked
CDECL ALIAS "exp_delta_m_clicked" ( _
208 BYVAL Button
AS GtkButton
PTR, _
209 BYVAL user_data
AS gpointer)
EXPORT
211 ?" --> callback exp_delta_m_clicked"
216 SUB exp_delta_p_clicked
CDECL ALIAS "exp_delta_p_clicked" ( _
217 BYVAL Button
AS GtkButton
PTR, _
218 BYVAL user_data
AS gpointer)
EXPORT
220 ?" --> callback exp_delta_p_clicked"
225 SUB exp_delta_set_clicked
CDECL ALIAS "exp_delta_set_clicked" ( _
226 BYVAL Button
AS GtkButton
PTR, _
227 BYVAL user_data
AS gpointer)
EXPORT
229 ?" --> callback exp_delta_set_clicked"
234 SUB exp_close_clicked
CDECL ALIAS "exp_close_clicked" ( _
235 BYVAL Button
AS GtkButton
PTR, _
236 BYVAL user_data
AS gpointer)
EXPORT
238 ?" --> callback exp_close_clicked"
243 SUB exp_arrange_clicked
CDECL ALIAS "exp_arrange_clicked" ( _
244 BYVAL Button
AS GtkButton
PTR, _
245 BYVAL user_data
AS gpointer)
EXPORT
247 ?" --> callback exp_arrange_clicked"
252 SUB exp_about_clicked
CDECL ALIAS "exp_about_clicked" ( _
253 BYVAL Button
AS GtkButton
PTR, _
254 BYVAL user_data
AS gpointer)
EXPORT
256 ?" --> callback exp_about_clicked"