1 /* # skkinput (Simple Kana-Kanji Input)
2  * Kinput.h --- Public Header file for KinputWidget
3  * This file is part of skkinput.
4  * Copyright (C) 1997
5  * Takashi SAKAMOTO (sakamoto@yajima.kuis.kyoto-u.ac.jp)
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2, or (at your option)
10  * any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with skkinput; see the file COPYING.  If not, write to
19  * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
20  */
21 #ifndef Kinput_h
22 #define Kinput_h
23 #include "commondef.h"
24 #include "kanji.h"
25 
26 #define XtNenableKinput1		"enableKinput1"
27 #define XtCEnableKinput1		"EnableKinput1"
28 
29 typedef struct _KinputRec	*KinputWidget ;
30 typedef struct _KinputClassRec	*KinputWidgetClass ;
31 
32 extern WidgetClass kinputWidgetClass ;
33 
34 /*
35  * �Ѵ����饤����ȴ�����¤��
36  */
37 struct KinputClient {
38   /* �������Ѥ������*/
39   int probe ;
40   /* ����� XIM �����Ѥ��롣XIM �Ǥϡ����Ѥ�ͽ����Ƥ��������ѳ� *
41    * ���׵᤬���롣ͽ���������Dz������빽��������������餷����*
42    * �����椫�ɤ����� probe ��������ͽ����Ƥ��뤫�ɤ����� reserve *
43    * KIP �ǤϻȤ�ʤ��Ȼפ�������� reserve == probe */
44   int reserve ;
45 
46   /* �Ѵ����饤����ȤΥ�����ɥ�ID */
47   Window req_window ;
48   Window focus_window ;
49   /* �Ѵ����饤����Ȥؤ����Ϥ�å����������Ѥ���륦����ɥ� */
50   Window probe_window ;
51   Window xevent_window ;
52   /* kinput2 protocol �����Ѥ���� ATOM (������..xim �Ǥޤ������餢�� */
53   /* ��������ˤ�ʤ��Τ��Ĥ��äȤ��ʤ���) */
54   Atom property ;
55   Atom target ;
56   Atom selection ;
57   unsigned long attribute_mask ;
58 
59   /* �̿����Ѥ��Ƥ���ץ�ȥ��� */
60   int protocol ;
61   int window_style ;
62   int event_select ;
63 
64   /* �ץ�ȥ��롦���������å� */
65   Widget protocol_widget ;
66   /* �Ѵ����ɽ�����Ƥ��륦�������å� */
67   Widget skkinput ;
68 
69   /* skkinput widget �����Ѥ��Ƥ���ե����(���������ǥե���ȤΥե���*
70    * �ȤǤϤʤ�������� over-the-spot ���Ѵ����饤����Ȥ�����׵��  *
71    * ���ä��Ѱդ����ե���ȤǤ��롣*/
72 #if 1
73   struct skkinputManagedFont	*fontset[ NUMBER_OF_CHARSET ] ;
74 #else
75   XFontStruct	*fontset[ NUMBER_OF_CHARSET ] ;
76 #endif
77   /* ������ɥ�����°����⡼�ɾ��� */
78   int chat_adapter, eggnl ;
79 
80   /* ���Υ��饤����ȤؤΥݥ�����*/
81   struct KinputClient *next ;
82 } ;
83 
84 #endif
85