ui/common/wrapper.c

Mon, 29 Sep 2025 21:14:46 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Mon, 29 Sep 2025 21:14:46 +0200
changeset 779
b84cbe57e0bd
parent 746
7899792496cb
child 782
a72d7509d292
permissions
-rw-r--r--

change UiCellValue from struct to union and pass it as pointer to the onsave function, for better compatibility with other languages

618
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 /*
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 *
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
4 * Copyright 2025 Olaf Wintermann. All rights reserved.
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 *
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 * Redistribution and use in source and binary forms, with or without
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 * modification, are permitted provided that the following conditions are met:
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 *
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 * 1. Redistributions of source code must retain the above copyright
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 * notice, this list of conditions and the following disclaimer.
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 *
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 * 2. Redistributions in binary form must reproduce the above copyright
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 * notice, this list of conditions and the following disclaimer in the
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 * documentation and/or other materials provided with the distribution.
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 *
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
2b3ac1611c64 add wrapper functions for accessing UiEvent data
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
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 * POSSIBILITY OF SUCH DAMAGE.
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 */
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
29 #include "wrapper.h"
656
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
30 #include "types.h"
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
31 #include <cx/list.h>
671
0ab4c7a18660 fix qt build
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 660
diff changeset
32 #include <string.h>
618
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
33
621
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
34 /* ---------------------------- UiObject ---------------------------- */
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
35
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
36 UiContext* ui_object_get_context(UiObject *obj) {
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
37 return obj->ctx;
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
38 }
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
39
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
40 void* ui_object_get_windowdata(UiObject *obj) {
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
41 return obj->window;
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
42 }
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
43
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
44 void ui_object_set_windowdata(UiObject *obj, void *windowdata) {
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
45 obj->window = windowdata;
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
46 }
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
47
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
48
640
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
49 /* ---------------------------- UiList ---------------------------- */
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
50
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
51 void* ui_list_get_data(UiList *list) {
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
52 return list->data;
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
53 }
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
54
641
0bce3325d255 add ui_list_set_data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 640
diff changeset
55 void ui_list_set_data(UiList *list, void *data) {
0bce3325d255 add ui_list_set_data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 640
diff changeset
56 list->data = data;
0bce3325d255 add ui_list_set_data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 640
diff changeset
57 }
0bce3325d255 add ui_list_set_data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 640
diff changeset
58
640
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
59 void* ui_list_get_iter(UiList *list) {
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
60 return list->iter;
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
61 }
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
62
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
63 void ui_list_set_iter(UiList *list, void *iter) {
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
64 list->iter = iter;
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
65 }
c948819bdfb2 add list wrapper functions for accessing data/iter
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 621
diff changeset
66
656
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
67
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
68 /* ------------------------------ UiSublist ------------------------------ */
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
69
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
70 UiSubList* ui_sublist_new(void) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
71 UiSubList *sublist = malloc(sizeof(UiSubList));
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
72 memset(sublist, 0, sizeof(UiSubList));
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
73 return sublist;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
74 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
75
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
76 void ui_sublist_set_value(UiSubList *sublist, UiList *value) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
77 sublist->value = value;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
78 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
79
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
80 void ui_sublist_set_varname(UiSubList *sublist, const char *varname) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
81 free((void*)sublist->varname);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
82 sublist->varname = strdup(varname);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
83 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
84
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
85 void ui_sublist_set_header(UiSubList *sublist, const char *header) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
86 free((void*)sublist->header);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
87 sublist->header = strdup(header);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
88 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
89
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
90 void ui_sublist_set_separator(UiSubList *sublist, UiBool separator) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
91 sublist->separator = separator;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
92 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
93
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
94 void ui_sublist_set_userdata(UiSubList *sublist, void *userdata) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
95 sublist->userdata = userdata;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
96 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
97
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
98 void ui_sublist_free(UiSubList *sublist) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
99 free((void*)sublist->varname);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
100 free((void*)sublist->header);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
101 free(sublist);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
102 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
103
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
104
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
105 /* -------------------- Source list (UiList<UiSublist>) -------------------- */
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
106
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
107 UiList* ui_srclist_new(UiContext *ctx, const char *name) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
108 UiList *list = ui_list_new2(ctx, name, uic_ucx_list_init, NULL);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
109 CxList *cxlist = list->data;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
110 cxlist->collection.simple_destructor = (cx_destructor_func)ui_sublist_free;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
111 return list;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
112 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
113
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
114 void ui_srclist_add(UiList *list, UiSubList *item) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
115 ui_list_append(list, item);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
116 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
117
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
118 void ui_srclist_insert(UiList *list, int index, UiSubList *item) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
119 CxList *cxlist = list->data;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
120 cxListInsert(cxlist, index, item);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
121 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
122
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
123 void ui_srclist_remove(UiList *list, int index) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
124 CxList *cxlist = list->data;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
125 cxListRemove(cxlist, index);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
126 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
127
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
128 void ui_srclist_clear(UiList *list) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
129 CxList *cxlist = list->data;
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
130 cxListClear(cxlist);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
131 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
132
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
133 int ui_srclist_size(UiList *list) {
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
134 return ui_list_count(list);
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
135 }
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
136
2f18119d176a add srclist wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 655
diff changeset
137
660
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
138 /* ---------------------------- UiSubListEventData ---------------------------- */
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
139
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
140 UiList* ui_sublist_event_get_list(UiSubListEventData *event) {
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
141 return event->list;
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
142 }
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
143
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
144 int ui_sublist_event_get_sublist_index(UiSubListEventData *event) {
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
145 return event->sublist_index;
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
146 }
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
147
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
148 int ui_sublist_event_get_row_index(UiSubListEventData *event) {
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
149 return event->row_index;
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
150 }
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
151
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
152 void* ui_sublist_event_get_row_data(UiSubListEventData *event) {
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
153 return event->row_data;
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
154 }
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
155
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
156 void* ui_sublist_event_get_sublist_userdata(UiSubListEventData *event) {
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
157 return event->sublist_userdata;
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
158 }
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
159
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
160 void* ui_sublist_event_get_event_data(UiSubListEventData *event) {
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
161 return event->event_data;
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
162 }
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
163
c177258917c3 add UiSubListEventData wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 659
diff changeset
164
621
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
165 /* ---------------------------- UiEvent ---------------------------- */
84b351712c19 add wrapper functions for accessing some UiObject members
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 618
diff changeset
166
618
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
167 UiObject* ui_event_get_obj(UiEvent *event) {
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
168 return event->obj;
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
169 }
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
170
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
171 void* ui_event_get_document(UiEvent *event) {
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
172 return event->document;
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
173 }
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
174
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
175 void* ui_event_get_windowdata(UiEvent *event) {
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
176 return event->window;
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
177 }
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
178
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
179 void* ui_event_get_eventdata(UiEvent *event) {
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
180 return event->eventdata;
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
181 }
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
182
659
d6baaa93f7be add UiEvent eventdatatype
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 656
diff changeset
183 int ui_event_get_eventdatatype(UiEvent *event) {
d6baaa93f7be add UiEvent eventdatatype
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 656
diff changeset
184 return event->eventdatatype;
d6baaa93f7be add UiEvent eventdatatype
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 656
diff changeset
185 }
d6baaa93f7be add UiEvent eventdatatype
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 656
diff changeset
186
618
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
187 int ui_event_get_int(UiEvent *event) {
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
188 return event->intval;
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
189 }
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
190
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
191 int ui_event_get_set(UiEvent *event) {
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
192 return event->set;
2b3ac1611c64 add wrapper functions for accessing UiEvent data
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
193 }
654
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
194
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
195
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
196 /* ------------------------- SubListItem (public) ------------------------- */
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
197
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
198 void ui_sublist_item_set_icon(UiSubListItem *item, const char *icon) {
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
199 item->icon = icon ? strdup(icon) : NULL;
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
200 }
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
201
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
202 void ui_sublist_item_set_label(UiSubListItem *item, const char *label) {
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
203 item->label = label ? strdup(label) : NULL;
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
204 }
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
205
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
206 void ui_sublist_item_set_button_icon(UiSubListItem *item, const char *button_icon) {
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
207 item->button_icon = button_icon ? strdup(button_icon) : NULL;
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
208 }
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
209
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
210 void ui_sublist_item_set_button_label(UiSubListItem *item, const char *button_label) {
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
211 item->button_label = button_label ? strdup(button_label) : NULL;
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
212 }
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
213
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
214 void ui_sublist_item_set_badge(UiSubListItem *item, const char *badge) {
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
215 item->badge = badge ? strdup(badge) : NULL;
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
216 }
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
217
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
218 void ui_sublist_item_set_eventdata(UiSubListItem *item, void *eventdata) {
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
219 item->eventdata = NULL;
e379d2e3c1b3 add sublist item setter functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 641
diff changeset
220 }
693
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
221
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
222 /* ---------------------------- UiListSelection ---------------------------- */
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
223
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
224 UiListSelection* ui_list_get_selection_allocated(UiList *list) {
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
225 UiListSelection *sel = malloc(sizeof(UiListSelection));
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
226 *sel = ui_list_get_selection(list);
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
227 return sel;
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
228
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
229 }
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
230
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
231 int ui_list_selection_get_count(UiListSelection *sel) {
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
232 return sel->count;
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
233 }
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
234
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
235 int* ui_list_selection_get_rows(UiListSelection *sel) {
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
236 return sel->rows;
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
237 }
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
238
736
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
239 UIEXPORT void ui_list_set_selected_indices(UiList *list, int *indices, int num) {
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
240 UiListSelection sel;
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
241 sel.rows = indices;
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
242 sel.count = num;
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
243 if(list->setselection) {
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
244 list->setselection(list, sel);
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
245 }
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
246 }
3ad4792ffadc add alternative function for setting list selections
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 700
diff changeset
247
693
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
248 void ui_list_selection_free(UiListSelection *sel) {
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
249 ui_listselection_free(*sel);
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
250 free(sel);
3e1cd004da0a add UiListSelection wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 671
diff changeset
251 }
700
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
252
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
253 /* ---------------------------- UiFileList ---------------------------- */
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
254
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
255 int ui_filelist_count(UiFileList *flist) {
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
256 return flist->nfiles;
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
257 }
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
258
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
259 char* ui_filelist_get(UiFileList *flist, int index) {
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
260 if(index >= 0 && index < flist->nfiles) {
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
261 return flist->files[index];
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
262 }
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
263 return NULL;
7032f69a325c add UiFileList wrapper
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 693
diff changeset
264 }
746
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
265
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
266 /* ---------------------------- UiTextStyle ---------------------------- */
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
267
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
268 void ui_textstyle_set_bold(UiTextStyle *style, UiBool set) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
269 if(set) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
270 style->text_style |= UI_TEXT_STYLE_BOLD;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
271 } else {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
272 style->text_style &= ~UI_TEXT_STYLE_BOLD;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
273 }
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
274 }
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
275
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
276 void ui_textstyle_set_underline(UiTextStyle *style, UiBool set) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
277 if(set) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
278 style->text_style |= UI_TEXT_STYLE_UNDERLINE;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
279 } else {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
280 style->text_style &= ~UI_TEXT_STYLE_UNDERLINE;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
281 }
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
282 }
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
283
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
284 void ui_textstyle_set_italic(UiTextStyle *style, UiBool set) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
285 if(set) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
286 style->text_style |= UI_TEXT_STYLE_ITALIC;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
287 } else {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
288 style->text_style &= ~UI_TEXT_STYLE_ITALIC;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
289 }
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
290 }
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
291
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
292 void ui_textstyle_set_color(UiTextStyle *style, int r, int g, int b) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
293 style->fg_set = TRUE;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
294 style->fg.red = r;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
295 style->fg.green = g;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
296 style->fg.blue = b;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
297 }
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
298
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
299 void ui_textstyle_enable_color(UiTextStyle *style, UiBool enable) {
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
300 style->fg_set = enable;
7899792496cb add textstyle wrapper functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 736
diff changeset
301 }

mercurial