ui/cocoa/text.h

Thu, 04 Jun 2026 19:21:28 +0200

author
Olaf Wintermann <olaf.wintermann@gmail.com>
date
Thu, 04 Jun 2026 19:21:28 +0200
changeset 1166
01653cc7256b
parent 1164
3c037b84e6eb
permissions
-rw-r--r--

remove unnecessary UiContext attach/detach fptrs

500
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 /*
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 *
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
4 * Copyright 2025 Olaf Wintermann. All rights reserved.
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 *
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 * Redistribution and use in source and binary forms, with or without
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 * modification, are permitted provided that the following conditions are met:
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 *
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 * 1. Redistributions of source code must retain the above copyright
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 * notice, this list of conditions and the following disclaimer.
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 *
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 * 2. Redistributions in binary form must reproduce the above copyright
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 * notice, this list of conditions and the following disclaimer in the
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 * documentation and/or other materials provided with the distribution.
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 *
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
95ab1710993f fix nested box containers (Cocoa)
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
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 * POSSIBILITY OF SUCH DAMAGE.
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 */
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
29 #import "toolkit.h"
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
30
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
31 #import "../ui/text.h"
95ab1710993f fix nested box containers (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
32
584
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
33
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
34 void ui_textarea_save(UiText *text);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
35 void ui_textarea_destroy(UiText *text);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
36 void ui_textarea_restore(UiText *text);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
37 void ui_textarea_set(UiText *text, const char *str);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
38 char* ui_textarea_get(UiText *text);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
39 char* ui_textarea_getsubstr(UiText *text, int begin, int end);
1068
1c79dbd248f4 add UiText replace function (GTK)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 590
diff changeset
40 void ui_textarea_insert(UiText *text, int pos, const char *str);
584
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
41 void ui_textarea_setposition(UiText *text, int pos);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
42 int ui_textarea_position(UiText *text);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
43 void ui_textarea_setselection(UiText *text, int begin, int end);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
44 void ui_textarea_selection(UiText *text, int *begin, int *end);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
45 int ui_textarea_length(UiText *text);
12cca226c1eb implement textarea value binding (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 500
diff changeset
46 void ui_textarea_remove(UiText *text, int begin, int end);
590
07ecff1fa805 add textfield (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 584
diff changeset
47
07ecff1fa805 add textfield (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 584
diff changeset
48 char* ui_textfield_get(UiString *s);
07ecff1fa805 add textfield (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 584
diff changeset
49 void ui_textfield_set(UiString *s, const char *value);
1102
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
50
1164
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
51
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
52 @interface TextAreaDelegate: NSObject<NSTextViewDelegate, NSTextDelegate>
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
53
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
54 @property UiObject *obj;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
55 @property UiVar *var;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
56 @property ui_callback onchange;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
57 @property void *onchangedata;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
58 @property NSString *onchange_action;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
59 @property ui_callback ontextchanged;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
60 @property void *ontextchangeddata;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
61 @property NSString *ontextchanged_action;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
62
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
63 - (id)init:(UiObject*)obj var:(UiVar*)var args:(UiTextAreaArgs*)args;
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
64
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
65 @end
3c037b84e6eb implement textarea events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1102
diff changeset
66
1102
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
67 @interface TextFieldDelegate : NSObject<NSTextFieldDelegate>
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
68
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
69 @property UiObject *obj;
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
70 @property UiVar *var;
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
71 @property ui_callback onchange;
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
72 @property void *onchangedata;
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
73 @property NSString *onchange_action;
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
74
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
75 - (id)init:(UiObject*)obj var:(UiVar*)var;
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
76
c4883a63929b implement textfield onchange events (Cocoa)
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1068
diff changeset
77 @end

mercurial