1 /* 2 * This file is part of gtkD. 3 * 4 * gtkD is free software; you can redistribute it and/or modify 5 * it under the terms of the GNU Lesser General Public License 6 * as published by the Free Software Foundation; either version 3 7 * of the License, or (at your option) any later version, with 8 * some exceptions, please read the COPYING file. 9 * 10 * gtkD is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public License 16 * along with gtkD; if not, write to the Free Software 17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110, USA 18 */ 19 20 // generated automatically - do not change 21 // find conversion definition on APILookup.txt 22 // implement new conversion functionalities on the wrap.utils pakage 23 24 25 module vte.c.types; 26 27 public import gdk.c.types; 28 public import gio.c.types; 29 public import glib.c.types; 30 public import gobject.c.types; 31 public import gtk.c.types; 32 public import pango.c.types; 33 34 35 /** 36 * An enumerated type which can be used to indicate the cursor blink mode 37 * for the terminal. 38 */ 39 public enum VteCursorBlinkMode 40 { 41 /** 42 * Follow GTK+ settings for cursor blinking. 43 */ 44 SYSTEM = 0, 45 /** 46 * Cursor blinks. 47 */ 48 ON = 1, 49 /** 50 * Cursor does not blink. 51 */ 52 OFF = 2, 53 } 54 alias VteCursorBlinkMode CursorBlinkMode; 55 56 /** 57 * An enumerated type which can be used to indicate what should the terminal 58 * draw at the cursor position. 59 */ 60 public enum VteCursorShape 61 { 62 /** 63 * Draw a block cursor. This is the default. 64 */ 65 BLOCK = 0, 66 /** 67 * Draw a vertical bar on the left side of character. 68 * This is similar to the default cursor for other GTK+ widgets. 69 */ 70 IBEAM = 1, 71 /** 72 * Draw a horizontal bar below the character. 73 */ 74 UNDERLINE = 2, 75 } 76 alias VteCursorShape CursorShape; 77 78 /** 79 * An enumerated type which can be used to indicate which string the terminal 80 * should send to an application when the user presses the Delete or Backspace 81 * keys. 82 */ 83 public enum VteEraseBinding 84 { 85 /** 86 * For backspace, attempt to determine the right value from the terminal's IO settings. For delete, use the control sequence. 87 */ 88 AUTO = 0, 89 /** 90 * Send an ASCII backspace character (0x08). 91 */ 92 ASCII_BACKSPACE = 1, 93 /** 94 * Send an ASCII delete character (0x7F). 95 */ 96 ASCII_DELETE = 2, 97 /** 98 * Send the "@@7" control sequence. 99 */ 100 DELETE_SEQUENCE = 3, 101 /** 102 * Send terminal's "erase" setting. 103 */ 104 TTY = 4, 105 } 106 alias VteEraseBinding EraseBinding; 107 108 /** 109 * An enumeratio type that can be used to specify the format the selection 110 * should be copied to the clipboard in. 111 * 112 * Since: 0.50 113 */ 114 public enum VteFormat 115 { 116 /** 117 * Export as plain text 118 */ 119 TEXT = 1, 120 /** 121 * Export as HTML formatted text 122 */ 123 HTML = 2, 124 } 125 alias VteFormat Format; 126 127 public enum VtePtyError 128 { 129 /** 130 * Obsolete. Deprecated: 0.42 131 */ 132 PTY_HELPER_FAILED = 0, 133 /** 134 * failure when using PTY98 to allocate the PTY 135 */ 136 PTY98_FAILED = 1, 137 } 138 alias VtePtyError PtyError; 139 140 public enum VtePtyFlags 141 { 142 /** 143 * Unused. Deprecated: 0.38 144 */ 145 NO_LASTLOG = 1, 146 /** 147 * Unused. Deprecated: 0.38 148 */ 149 NO_UTMP = 2, 150 /** 151 * Unused. Deprecated: 0.38 152 */ 153 NO_WTMP = 4, 154 /** 155 * Unused. Deprecated: 0.38 156 */ 157 NO_HELPER = 8, 158 /** 159 * Unused. Deprecated: 0.38 160 */ 161 NO_FALLBACK = 16, 162 /** 163 * the default flags 164 */ 165 DEFAULT = 0, 166 } 167 alias VtePtyFlags PtyFlags; 168 169 /** 170 * An enum type for regex errors. In addition to the values listed above, 171 * any PCRE2 error values may occur. 172 * 173 * Since: 0.46 174 */ 175 public enum VteRegexError 176 { 177 /** 178 * The PCRE2 library was built without 179 * Unicode support which is required for VTE 180 */ 181 INCOMPATIBLE = 2147483646, 182 /** 183 * Regexes are not supported because VTE was 184 * built without PCRE2 support 185 */ 186 NOT_SUPPORTED = 2147483647, 187 } 188 alias VteRegexError RegexError; 189 190 /** 191 * An enumerated type which can be used to indicate whether the terminal allows 192 * the text contents to be blinked. 193 * 194 * Since: 0.52 195 */ 196 public enum VteTextBlinkMode 197 { 198 /** 199 * Do not blink the text. 200 */ 201 NEVER = 0, 202 /** 203 * Allow blinking text only if the terminal is focused. 204 */ 205 FOCUSED = 1, 206 /** 207 * Allow blinking text only if the terminal is unfocused. 208 */ 209 UNFOCUSED = 2, 210 /** 211 * Allow blinking text. This is the default. 212 */ 213 ALWAYS = 3, 214 } 215 alias VteTextBlinkMode TextBlinkMode; 216 217 /** 218 * A flag type to determine how terminal contents should be written 219 * to an output stream. 220 */ 221 public enum VteWriteFlags 222 { 223 /** 224 * Write contents as UTF-8 text. This is the default. 225 */ 226 DEFAULT = 0, 227 } 228 alias VteWriteFlags WriteFlags; 229 230 struct VteCharAttributes 231 { 232 long row; 233 long column; 234 PangoColor fore; 235 PangoColor back; 236 import std.bitmanip: bitfields; 237 mixin(bitfields!( 238 uint, "underline", 1, 239 uint, "strikethrough", 1, 240 uint, "columns", 4, 241 uint, "", 26 242 )); 243 } 244 245 struct VtePty; 246 247 struct VtePtyClass; 248 249 struct VteRegex; 250 251 struct VteTerminal 252 { 253 GtkWidget widget; 254 void**[1] UnusedPadding; 255 } 256 257 /** 258 * All of these fields should be considered read-only, except for derived classes. 259 */ 260 struct VteTerminalClass 261 { 262 GtkWidgetClass parentClass; 263 /** */ 264 extern(C) void function(VteTerminal* terminal) eof; 265 /** */ 266 extern(C) void function(VteTerminal* terminal, int status) childExited; 267 /** */ 268 extern(C) void function(VteTerminal* terminal) encodingChanged; 269 /** */ 270 extern(C) void function(VteTerminal* terminal, uint charWidth, uint charHeight) charSizeChanged; 271 /** */ 272 extern(C) void function(VteTerminal* terminal) windowTitleChanged; 273 /** */ 274 extern(C) void function(VteTerminal* terminal) iconTitleChanged; 275 /** */ 276 extern(C) void function(VteTerminal* terminal) selectionChanged; 277 /** */ 278 extern(C) void function(VteTerminal* terminal) contentsChanged; 279 /** */ 280 extern(C) void function(VteTerminal* terminal) cursorMoved; 281 /** */ 282 extern(C) void function(VteTerminal* terminal, const(char)* text, uint size) commit; 283 /** */ 284 extern(C) void function(VteTerminal* terminal) deiconifyWindow; 285 /** */ 286 extern(C) void function(VteTerminal* terminal) iconifyWindow; 287 /** */ 288 extern(C) void function(VteTerminal* terminal) raiseWindow; 289 /** */ 290 extern(C) void function(VteTerminal* terminal) lowerWindow; 291 /** */ 292 extern(C) void function(VteTerminal* terminal) refreshWindow; 293 /** */ 294 extern(C) void function(VteTerminal* terminal) restoreWindow; 295 /** */ 296 extern(C) void function(VteTerminal* terminal) maximizeWindow; 297 /** */ 298 extern(C) void function(VteTerminal* terminal, uint width, uint height) resizeWindow; 299 /** */ 300 extern(C) void function(VteTerminal* terminal, uint x, uint y) moveWindow; 301 /** */ 302 extern(C) void function(VteTerminal* terminal) increaseFontSize; 303 /** */ 304 extern(C) void function(VteTerminal* terminal) decreaseFontSize; 305 /** */ 306 extern(C) void function(VteTerminal* terminal) textModified; 307 /** */ 308 extern(C) void function(VteTerminal* terminal) textInserted; 309 /** */ 310 extern(C) void function(VteTerminal* terminal) textDeleted; 311 /** */ 312 extern(C) void function(VteTerminal* terminal, int delta) textScrolled; 313 /** */ 314 extern(C) void function(VteTerminal* terminal) copyClipboard; 315 /** */ 316 extern(C) void function(VteTerminal* terminal) pasteClipboard; 317 /** */ 318 extern(C) void function(VteTerminal* terminal) bell; 319 void*[16] padding; 320 VteTerminalClassPrivate* priv; 321 } 322 323 struct VteTerminalClassPrivate; 324 325 /** 326 * Specifies the type of a selection function used to check whether 327 * a cell has to be selected or not. 328 * 329 * Params: 330 * terminal = terminal in which the cell is. 331 * column = column in which the cell is. 332 * row = row in which the cell is. 333 * data = user data. 334 * 335 * Returns: %TRUE if cell has to be selected; %FALSE if otherwise. 336 */ 337 public alias extern(C) int function(VteTerminal* terminal, glong column, glong row, void* data) VteSelectionFunc; 338 339 /** 340 * Callback for vte_terminal_spawn_async(). 341 * 342 * On success, @pid contains the PID of the spawned process, and @error 343 * is %NULL. 344 * On failure, @pid is -1 and @error contains the error information. 345 * 346 * Params: 347 * terminal = the #VteTerminal 348 * pid = a #GPid 349 * error = a #GError, or %NULL 350 * userData = user data that was passed to vte_terminal_spawn_async 351 * 352 * Since: 0.48 353 */ 354 public alias extern(C) void function(VteTerminal* terminal, GPid pid, GError* error, void* userData) VteTerminalSpawnAsyncCallback; 355 356 /** 357 * The major version number of the VTE library 358 * (e.g. in version 3.1.4 this is 3). 359 */ 360 enum MAJOR_VERSION = 0; 361 alias VTE_MAJOR_VERSION = MAJOR_VERSION; 362 363 /** 364 * The micro version number of the VTE library 365 * (e.g. in version 3.1.4 this is 4). 366 */ 367 enum MICRO_VERSION = 3; 368 alias VTE_MICRO_VERSION = MICRO_VERSION; 369 370 /** 371 * The minor version number of the VTE library 372 * (e.g. in version 3.1.4 this is 1). 373 */ 374 enum MINOR_VERSION = 56; 375 alias VTE_MINOR_VERSION = MINOR_VERSION; 376 377 enum REGEX_FLAGS_DEFAULT = 1075314688; 378 alias VTE_REGEX_FLAGS_DEFAULT = REGEX_FLAGS_DEFAULT; 379 380 enum SPAWN_NO_PARENT_ENVV = 33554432; 381 alias VTE_SPAWN_NO_PARENT_ENVV = SPAWN_NO_PARENT_ENVV; 382 383 enum TEST_FLAGS_ALL = 18446744073709551615UL; 384 alias VTE_TEST_FLAGS_ALL = TEST_FLAGS_ALL; 385 386 enum TEST_FLAGS_NONE = 0UL; 387 alias VTE_TEST_FLAGS_NONE = TEST_FLAGS_NONE;