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 * Conversion parameters: 26 * inFile = GtkIMContextSimple.html 27 * outPack = gtk 28 * outFile = IMContextSimple 29 * strct = GtkIMContextSimple 30 * realStrct= 31 * ctorStrct=GtkIMContext 32 * clss = IMContextSimple 33 * interf = 34 * class Code: No 35 * interface Code: No 36 * template for: 37 * extend = 38 * implements: 39 * prefixes: 40 * - gtk_im_context_simple_ 41 * omit structs: 42 * omit prefixes: 43 * omit code: 44 * omit signals: 45 * imports: 46 * structWrap: 47 * module aliases: 48 * local aliases: 49 * overrides: 50 */ 51 52 module gtk.IMContextSimple; 53 54 public import gtkc.gtktypes; 55 56 private import gtkc.gtk; 57 private import glib.ConstructionException; 58 private import gobject.ObjectG; 59 60 61 62 private import gtk.IMContext; 63 64 /** 65 */ 66 public class IMContextSimple : IMContext 67 { 68 69 /** the main Gtk struct */ 70 protected GtkIMContextSimple* gtkIMContextSimple; 71 72 73 /** Get the main Gtk struct */ 74 public GtkIMContextSimple* getIMContextSimpleStruct() 75 { 76 return gtkIMContextSimple; 77 } 78 79 80 /** the main Gtk struct as a void* */ 81 protected override void* getStruct() 82 { 83 return cast(void*)gtkIMContextSimple; 84 } 85 86 /** 87 * Sets our main struct and passes it to the parent class 88 */ 89 public this (GtkIMContextSimple* gtkIMContextSimple) 90 { 91 super(cast(GtkIMContext*)gtkIMContextSimple); 92 this.gtkIMContextSimple = gtkIMContextSimple; 93 } 94 95 protected override void setStruct(GObject* obj) 96 { 97 super.setStruct(obj); 98 gtkIMContextSimple = cast(GtkIMContextSimple*)obj; 99 } 100 101 /** 102 */ 103 104 /** 105 * Creates a new GtkIMContextSimple. 106 * Throws: ConstructionException GTK+ fails to create the object. 107 */ 108 public this () 109 { 110 // GtkIMContext * gtk_im_context_simple_new (void); 111 auto p = gtk_im_context_simple_new(); 112 if(p is null) 113 { 114 throw new ConstructionException("null returned by gtk_im_context_simple_new()"); 115 } 116 this(cast(GtkIMContextSimple*) p); 117 } 118 119 /** 120 * Adds an additional table to search to the input context. 121 * Each row of the table consists of max_seq_len key symbols 122 * followed by two guint16 interpreted as the high and low 123 * words of a gunicode value. Tables are searched starting 124 * from the last added. 125 * The table must be sorted in dictionary order on the 126 * numeric value of the key symbol fields. (Values beyond 127 * the length of the sequence should be zero.) 128 * Params: 129 * data = the table 130 * maxSeqLen = Maximum length of a sequence in the table 131 * (cannot be greater than GTK_MAX_COMPOSE_LEN) 132 */ 133 public void addTable(ushort[] data, int maxSeqLen) 134 { 135 // void gtk_im_context_simple_add_table (GtkIMContextSimple *context_simple, guint16 *data, gint max_seq_len, gint n_seqs); 136 gtk_im_context_simple_add_table(gtkIMContextSimple, data.ptr, maxSeqLen, cast(int) data.length); 137 } 138 }