1 | /* GTK - The GIMP Toolkit |
2 | * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald |
3 | * |
4 | * Copyright (C) 2004-2006 Christian Hammond |
5 | * Copyright (C) 2008 Cody Russell |
6 | * Copyright (C) 2008 Red Hat, Inc. |
7 | * |
8 | * This library is free software; you can redistribute it and/or |
9 | * modify it under the terms of the GNU Lesser General Public |
10 | * License as published by the Free Software Foundation; either |
11 | * version 2 of the License, or (at your option) any later version. |
12 | * |
13 | * This library is distributed in the hope that it will be useful, |
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
16 | * Lesser General Public License for more details. |
17 | * |
18 | * You should have received a copy of the GNU Lesser General Public |
19 | * License along with this library. If not, see <http://www.gnu.org/licenses/>. |
20 | */ |
21 | |
22 | /* |
23 | * Modified by the GTK+ Team and others 1997-2000. See the AUTHORS |
24 | * file for a list of people on the GTK+ Team. See the ChangeLog |
25 | * files for a list of changes. These files are distributed with |
26 | * GTK+ at ftp://ftp.gtk.org/pub/gtk/. |
27 | */ |
28 | |
29 | #ifndef __GTK_TEXT_H__ |
30 | #define __GTK_TEXT_H__ |
31 | |
32 | |
33 | #if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION) |
34 | #error "Only <gtk/gtk.h> can be included directly." |
35 | #endif |
36 | |
37 | #include <gtk/gtkeditable.h> |
38 | #include <gtk/gtkentrybuffer.h> |
39 | |
40 | |
41 | G_BEGIN_DECLS |
42 | |
43 | #define GTK_TYPE_TEXT (gtk_text_get_type ()) |
44 | #define GTK_TEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_TEXT, GtkText)) |
45 | #define GTK_IS_TEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_TEXT)) |
46 | |
47 | typedef struct _GtkText GtkText; |
48 | |
49 | struct _GtkText |
50 | { |
51 | /*< private >*/ |
52 | GtkWidget parent_instance; |
53 | }; |
54 | |
55 | GDK_AVAILABLE_IN_ALL |
56 | GType gtk_text_get_type (void) G_GNUC_CONST; |
57 | |
58 | GDK_AVAILABLE_IN_ALL |
59 | GtkWidget * gtk_text_new (void); |
60 | GDK_AVAILABLE_IN_ALL |
61 | GtkWidget * gtk_text_new_with_buffer (GtkEntryBuffer *buffer); |
62 | |
63 | GDK_AVAILABLE_IN_ALL |
64 | GtkEntryBuffer *gtk_text_get_buffer (GtkText *self); |
65 | GDK_AVAILABLE_IN_ALL |
66 | void gtk_text_set_buffer (GtkText *self, |
67 | GtkEntryBuffer *buffer); |
68 | |
69 | GDK_AVAILABLE_IN_ALL |
70 | void gtk_text_set_visibility (GtkText *self, |
71 | gboolean visible); |
72 | GDK_AVAILABLE_IN_ALL |
73 | gboolean gtk_text_get_visibility (GtkText *self); |
74 | |
75 | GDK_AVAILABLE_IN_ALL |
76 | void gtk_text_set_invisible_char (GtkText *self, |
77 | gunichar ch); |
78 | GDK_AVAILABLE_IN_ALL |
79 | gunichar gtk_text_get_invisible_char (GtkText *self); |
80 | GDK_AVAILABLE_IN_ALL |
81 | void gtk_text_unset_invisible_char (GtkText *self); |
82 | |
83 | GDK_AVAILABLE_IN_ALL |
84 | void gtk_text_set_overwrite_mode (GtkText *self, |
85 | gboolean overwrite); |
86 | GDK_AVAILABLE_IN_ALL |
87 | gboolean gtk_text_get_overwrite_mode (GtkText *self); |
88 | |
89 | GDK_AVAILABLE_IN_ALL |
90 | void gtk_text_set_max_length (GtkText *self, |
91 | int length); |
92 | GDK_AVAILABLE_IN_ALL |
93 | int gtk_text_get_max_length (GtkText *self); |
94 | GDK_AVAILABLE_IN_ALL |
95 | guint16 gtk_text_get_text_length (GtkText *self); |
96 | |
97 | GDK_AVAILABLE_IN_ALL |
98 | void gtk_text_set_activates_default (GtkText *self, |
99 | gboolean activates); |
100 | GDK_AVAILABLE_IN_ALL |
101 | gboolean gtk_text_get_activates_default (GtkText *self); |
102 | |
103 | GDK_AVAILABLE_IN_ALL |
104 | const char * gtk_text_get_placeholder_text (GtkText *self); |
105 | GDK_AVAILABLE_IN_ALL |
106 | void gtk_text_set_placeholder_text (GtkText *self, |
107 | const char *text); |
108 | |
109 | GDK_AVAILABLE_IN_ALL |
110 | void gtk_text_set_input_purpose (GtkText *self, |
111 | GtkInputPurpose purpose); |
112 | GDK_AVAILABLE_IN_ALL |
113 | GtkInputPurpose gtk_text_get_input_purpose (GtkText *self); |
114 | |
115 | GDK_AVAILABLE_IN_ALL |
116 | void gtk_text_set_input_hints (GtkText *self, |
117 | GtkInputHints hints); |
118 | GDK_AVAILABLE_IN_ALL |
119 | GtkInputHints gtk_text_get_input_hints (GtkText *self); |
120 | |
121 | GDK_AVAILABLE_IN_ALL |
122 | void gtk_text_set_attributes (GtkText *self, |
123 | PangoAttrList *attrs); |
124 | GDK_AVAILABLE_IN_ALL |
125 | PangoAttrList * gtk_text_get_attributes (GtkText *self); |
126 | |
127 | GDK_AVAILABLE_IN_ALL |
128 | void gtk_text_set_tabs (GtkText *self, |
129 | PangoTabArray *tabs); |
130 | |
131 | GDK_AVAILABLE_IN_ALL |
132 | PangoTabArray * gtk_text_get_tabs (GtkText *self); |
133 | |
134 | GDK_AVAILABLE_IN_ALL |
135 | gboolean gtk_text_grab_focus_without_selecting (GtkText *self); |
136 | |
137 | GDK_AVAILABLE_IN_ALL |
138 | void (GtkText *self, |
139 | GMenuModel *model); |
140 | GDK_AVAILABLE_IN_ALL |
141 | GMenuModel * (GtkText *self); |
142 | |
143 | GDK_AVAILABLE_IN_ALL |
144 | void gtk_text_set_enable_emoji_completion (GtkText *self, |
145 | gboolean enable_emoji_completion); |
146 | GDK_AVAILABLE_IN_ALL |
147 | gboolean gtk_text_get_enable_emoji_completion (GtkText *self); |
148 | |
149 | |
150 | GDK_AVAILABLE_IN_ALL |
151 | void gtk_text_set_propagate_text_width (GtkText *self, |
152 | gboolean propagate_text_width); |
153 | GDK_AVAILABLE_IN_ALL |
154 | gboolean gtk_text_get_propagate_text_width (GtkText *self); |
155 | |
156 | GDK_AVAILABLE_IN_ALL |
157 | void gtk_text_set_truncate_multiline (GtkText *self, |
158 | gboolean truncate_multiline); |
159 | GDK_AVAILABLE_IN_ALL |
160 | gboolean gtk_text_get_truncate_multiline (GtkText *self); |
161 | |
162 | GDK_AVAILABLE_IN_4_4 |
163 | void gtk_text_compute_cursor_extents (GtkText *self, |
164 | gsize position, |
165 | graphene_rect_t *strong, |
166 | graphene_rect_t *weak); |
167 | |
168 | |
169 | G_END_DECLS |
170 | |
171 | #endif /* __GTK_TEXT_H__ */ |
172 | |