]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkimcontextsimple.h
stylecontext: Do invalidation on first resize container
[~andy/gtk] / gtk / gtkimcontextsimple.h
index af563d67af4247fca0e713271793d7e09dad182e..ddb467944fb7b7d3161e839c5f092a044388553a 100644 (file)
  * Lesser General Public License for more details.
  *
  * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
  */
 
 #ifndef __GTK_IM_CONTEXT_SIMPLE_H__
 #define __GTK_IM_CONTEXT_SIMPLE_H__
 
+#if !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
+
 #include <gtk/gtkimcontext.h>
 
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
 
+G_BEGIN_DECLS
+
+/**
+ * GTK_MAX_COMPOSE_LEN:
+ *
+ * The maximum length of sequences in compose tables.
+ */
+#define GTK_MAX_COMPOSE_LEN 7
 
 #define GTK_TYPE_IM_CONTEXT_SIMPLE              (gtk_im_context_simple_get_type ())
-#define GTK_IM_CONTEXT_SIMPLE(obj)              (GTK_CHECK_CAST ((obj), GTK_TYPE_IM_CONTEXT_SIMPLE, GtkIMContextSimple))
-#define GTK_IM_CONTEXT_SIMPLE_CLASS(klass)      (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_IM_CONTEXT_SIMPLE, GtkIMContextSimpleClass))
-#define GTK_IS_IM_CONTEXT_SIMPLE(obj)           (GTK_CHECK_TYPE ((obj), GTK_TYPE_IM_CONTEXT_SIMPLE))
-#define GTK_IS_IM_CONTEXT_SIMPLE_CLASS(klass)   (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_IM_CONTEXT_SIMPLE))
-#define GTK_IM_CONTEXT_SIMPLE_GET_CLASS(obj)    (GTK_CHECK_GET_CLASS ((obj), GTK_TYPE_IM_CONTEXT_SIMPLE, GtkIMContextSimpleClass))
+#define GTK_IM_CONTEXT_SIMPLE(obj)              (G_TYPE_CHECK_INSTANCE_CAST ((obj), GTK_TYPE_IM_CONTEXT_SIMPLE, GtkIMContextSimple))
+#define GTK_IM_CONTEXT_SIMPLE_CLASS(klass)      (G_TYPE_CHECK_CLASS_CAST ((klass), GTK_TYPE_IM_CONTEXT_SIMPLE, GtkIMContextSimpleClass))
+#define GTK_IS_IM_CONTEXT_SIMPLE(obj)           (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GTK_TYPE_IM_CONTEXT_SIMPLE))
+#define GTK_IS_IM_CONTEXT_SIMPLE_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE ((klass), GTK_TYPE_IM_CONTEXT_SIMPLE))
+#define GTK_IM_CONTEXT_SIMPLE_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS ((obj), GTK_TYPE_IM_CONTEXT_SIMPLE, GtkIMContextSimpleClass))
 
 
-typedef struct _GtkIMContextSimple       GtkIMContextSimple;
-typedef struct _GtkIMContextSimpleClass  GtkIMContextSimpleClass;
+typedef struct _GtkIMContextSimple              GtkIMContextSimple;
+typedef struct _GtkIMContextSimplePrivate       GtkIMContextSimplePrivate;
+typedef struct _GtkIMContextSimpleClass         GtkIMContextSimpleClass;
 
-#define GTK_MAX_COMPOSE_LEN 7
-  
 struct _GtkIMContextSimple
 {
   GtkIMContext object;
 
-  GSList *tables;
-  
-  guint compose_buffer[GTK_MAX_COMPOSE_LEN + 1];
-  gunichar tentative_match;
-  gint tentative_match_len;
-
-  guint in_hex_sequence : 1;
+  /*< private >*/
+  GtkIMContextSimplePrivate *priv;
 };
 
 struct _GtkIMContextSimpleClass
@@ -58,16 +59,16 @@ struct _GtkIMContextSimpleClass
   GtkIMContextClass parent_class;
 };
 
-GtkType       gtk_im_context_simple_get_type (void) G_GNUC_CONST;
+GType         gtk_im_context_simple_get_type  (void) G_GNUC_CONST;
 GtkIMContext *gtk_im_context_simple_new       (void);
 
 void          gtk_im_context_simple_add_table (GtkIMContextSimple *context_simple,
                                               guint16            *data,
                                               gint                max_seq_len,
                                               gint                n_seqs);
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
+
+
+G_END_DECLS
 
 
 #endif /* __GTK_IM_CONTEXT_SIMPLE_H__ */