Fri, 13 Dec 2024 10:59:31 +0100
finish motif path bar implementation
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
1 | /* |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
2 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
3 | * |
140
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
4 | * Copyright 2017 Olaf Wintermann. All rights reserved. |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
5 | * |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
6 | * Redistribution and use in source and binary forms, with or without |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
7 | * modification, are permitted provided that the following conditions are met: |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
8 | * |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
9 | * 1. Redistributions of source code must retain the above copyright |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
10 | * notice, this list of conditions and the following disclaimer. |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
11 | * |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
12 | * 2. Redistributions in binary form must reproduce the above copyright |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
13 | * notice, this list of conditions and the following disclaimer in the |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
14 | * documentation and/or other materials provided with the distribution. |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
15 | * |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
16 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
17 | * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
18 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
19 | * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
20 | * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
21 | * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
22 | * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
23 | * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
24 | * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
25 | * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
26 | * POSSIBILITY OF SUCH DAMAGE. |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
27 | */ |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
28 | |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
29 | #ifndef TREE_H |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
30 | #define TREE_H |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
31 | |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
32 | #include "../ui/tree.h" |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
33 | #include "toolkit.h" |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
34 | |
411
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
35 | #include <cx/array_list.h> |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
36 | |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
37 | #ifdef __cplusplus |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
38 | extern "C" { |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
39 | #endif |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
40 | |
140
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
41 | typedef struct UiListView { |
147
2e384acc89a6
adds simple drag and drop support (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
142
diff
changeset
|
42 | UiObject *obj; |
140
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
43 | GtkWidget *widget; |
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
44 | UiVar *var; |
142
46448d38885c
new checkbox and radionbutton features and more refactoring
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
140
diff
changeset
|
45 | UiModel *model; |
394
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
46 | ui_callback ondragstart; |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
47 | void *ondragstartdata; |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
48 | ui_callback ondragcomplete; |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
49 | void *ondragcompletedata; |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
50 | ui_callback ondrop; |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
51 | void *ondropdata; |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
52 | |
140
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
53 | } UiListView; |
42
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
54 | |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
55 | typedef struct UiTreeEventData { |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
56 | UiObject *obj; |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
57 | ui_callback activate; |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
58 | ui_callback selection; |
268
1b321a0c624f
port table to new API, replace custom tree model with GtkListStore
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
152
diff
changeset
|
59 | void *activatedata; |
1b321a0c624f
port table to new API, replace custom tree model with GtkListStore
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
152
diff
changeset
|
60 | void *selectiondata; |
42
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
61 | } UiTreeEventData; |
411
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
62 | |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
63 | typedef struct UiListBox UiListBox; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
64 | |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
65 | typedef struct UiListBoxSubList { |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
66 | UiVar *var; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
67 | size_t numitems; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
68 | char *header; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
69 | UiBool separator; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
70 | CxList *widgets; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
71 | UiListBox *listbox; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
72 | void *userdata; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
73 | size_t index; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
74 | } UiListBoxSubList; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
75 | |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
76 | struct UiListBox { |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
77 | UiObject *obj; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
78 | GtkListBox *listbox; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
79 | CxList *sublists; // contains UiListBoxSubList elements |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
80 | ui_sublist_getvalue_func getvalue; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
81 | ui_callback onactivate; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
82 | void *onactivatedata; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
83 | ui_callback onbuttonclick; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
84 | void *onbuttonclickdata; |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
85 | |
411
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
86 | GtkListBoxRow *first_row; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
87 | }; |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
88 | |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
89 | void* ui_strmodel_getvalue(void *elm, int column); |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
90 | |
142
46448d38885c
new checkbox and radionbutton features and more refactoring
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
140
diff
changeset
|
91 | UIWIDGET ui_listview_var(UiObject *obj, UiVar *var, ui_getvaluefunc getvalue, ui_callback f, void *udata); |
46448d38885c
new checkbox and radionbutton features and more refactoring
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
140
diff
changeset
|
92 | UIWIDGET ui_table_var(UiObject *obj, UiVar *var, UiModel *model, UiListCallbacks cb); |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
93 | |
147
2e384acc89a6
adds simple drag and drop support (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
142
diff
changeset
|
94 | GtkWidget* ui_get_tree_widget(UIWIDGET widget); |
2e384acc89a6
adds simple drag and drop support (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
142
diff
changeset
|
95 | |
140
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
96 | void ui_listview_update(UiList *list, int i); |
291
302a150ff5e4
implement ui_list_getselection (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
270
diff
changeset
|
97 | UiListSelection ui_listview_getselection(UiList *list); |
360
681b930abe84
implement combobox get/set selection (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
321
diff
changeset
|
98 | void ui_listview_setselection(UiList *list, UiListSelection selection); |
291
302a150ff5e4
implement ui_list_getselection (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
270
diff
changeset
|
99 | |
152
62921b370c60
fixes use after free when a GtkTreeView was destroyed
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
150
diff
changeset
|
100 | void ui_combobox_destroy(GtkWidget *w, UiListView *v); |
140
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
101 | void ui_listview_destroy(GtkWidget *w, UiListView *v); |
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
102 | |
42
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
103 | void ui_listview_activate_event( |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
104 | GtkTreeView *tree_view, |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
105 | GtkTreePath *path, |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
106 | GtkTreeViewColumn *column, |
42
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
107 | UiTreeEventData *event); |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
108 | void ui_listview_selection_event( |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
109 | GtkTreeSelection *treeselection, |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
110 | UiTreeEventData *event); |
291
302a150ff5e4
implement ui_list_getselection (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
270
diff
changeset
|
111 | UiListSelection ui_listview_selection( |
42
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
112 | GtkTreeSelection *selection, |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
113 | UiTreeEventData *event); |
29b2821d1262
added table view events (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
40
diff
changeset
|
114 | int ui_tree_path_list_index(GtkTreePath *path); |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
115 | |
394
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
116 | void ui_listview_add_dnd(UiListView *listview, UiListArgs *args); |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
117 | void ui_listview_enable_drop(UiListView *listview, UiListArgs *args); |
bedd499b640d
implement table dnd (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
360
diff
changeset
|
118 | |
142
46448d38885c
new checkbox and radionbutton features and more refactoring
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
140
diff
changeset
|
119 | UIWIDGET ui_combobox_var(UiObject *obj, UiVar *var, ui_getvaluefunc getvalue, ui_callback f, void *udata); |
270
9389313ac00f
port combobox to new API (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
268
diff
changeset
|
120 | GtkWidget* ui_create_combobox(UiObject *obj, UiModel *model, UiVar *var, ui_callback f, void *udata); |
116
480354705c2f
added combobox (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
42
diff
changeset
|
121 | void ui_combobox_change_event(GtkComboBox *widget, UiEventData *e); |
140
c03c338a7dcf
refactors value binding system
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
116
diff
changeset
|
122 | void ui_combobox_modelupdate(UiList *list, int i); |
360
681b930abe84
implement combobox get/set selection (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
321
diff
changeset
|
123 | UiListSelection ui_combobox_getselection(UiList *list); |
681b930abe84
implement combobox get/set selection (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
321
diff
changeset
|
124 | void ui_combobox_setselection(UiList *list, UiListSelection selection); |
411
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
125 | |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
126 | void ui_listbox_update(UiListBox *listbox, int from, int to); |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
127 | void ui_listbox_update_sublist(UiListBox *listbox, UiListBoxSubList *sublist, size_t listbox_insert_index); |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
128 | void ui_listbox_list_update(UiList *list, int i); |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
129 | |
3e91b7aff6a1
add sourcelist widget (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
394
diff
changeset
|
130 | void ui_listbox_row_activate(GtkListBox *self, GtkListBoxRow *row, gpointer user_data); |
116
480354705c2f
added combobox (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
42
diff
changeset
|
131 | |
33
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
132 | #ifdef __cplusplus |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
133 | } |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
134 | #endif |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
135 | |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
136 | #endif /* TREE_H */ |
458831c574f4
added listview, sidebar and toolbar image button (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
137 |