1 /*
2  * SPDX-FileCopyrightText: 2010~2020 CSSlayer <wengxt@gmail.com>
3  *
4  * SPDX-License-Identifier: LGPL-2.1-or-later
5  */
6 
7 #ifndef __FCITX_IM_CONTEXT_H_
8 #define __FCITX_IM_CONTEXT_H_
9 
10 #include <gtk/gtk.h>
11 
12 /*
13  * Type macros.
14  */
15 #define FCITX_TYPE_IM_CONTEXT (fcitx_im_context_get_type())
16 #define FCITX_IM_CONTEXT(obj)                                                  \
17     (G_TYPE_CHECK_INSTANCE_CAST((obj), FCITX_TYPE_IM_CONTEXT, FcitxIMContext))
18 #define FCITX_IM_CONTEXT_CLASS(klass)                                          \
19     (G_TYPE_CHECK_CLASS_CAST((klass), FCITX_TYPE_IM_CONTEXT,                   \
20                              FcitxIMContextClass))
21 #define FCITX_IS_IM_CONTEXT(obj)                                               \
22     (G_TYPE_CHECK_INSTANCE_TYPE((obj), FCITX_TYPE_IM_CONTEXT))
23 #define FCITX_IS_IM_CONTEXT_CLASS(klass)                                       \
24     (G_TYPE_CHECK_CLASS_TYPE((klass), FCITX_TYPE_IM_CONTEXT))
25 #define FCITX_IM_CONTEXT_GET_CLASS(obj)                                        \
26     (G_TYPE_CHECK_GET_CLASS((obj), FCITX_TYPE_IM_CONTEXT, FcitxIMContextClass))
27 
28 G_BEGIN_DECLS
29 
30 typedef struct _FcitxIMContext FcitxIMContext;
31 typedef struct _FcitxIMContextClass FcitxIMContextClass;
32 
33 GType fcitx_im_context_get_type(void);
34 FcitxIMContext *fcitx_im_context_new(void);
35 void fcitx_im_context_register_type(GTypeModule *type_module);
36 
37 G_END_DECLS
38 #endif
39 // kate: indent-mode cstyle; space-indent on; indent-width 0;
40