/*
###
### This file is part of
###
###                        TurboLinux  ZWinPro
###
###                 Copyright (C) 1999-2000 TurboLinux, Inc. 
###                        All Rights Reserved
### Distributed under the terms of the GNU General Public License (GPL)
###
###
### Authors:     TurboLinux Chinese Development Team:
###              Justin Yu   <justiny@turbolinux.com.cn>
###              Sean Chen   <seanc@turbolinux.com.cn>
###              Daniel Fang <danf@turbolinux.com.cn>
### WWW:         http://www.turbolinux.com.cn/ZWinPro/
### FTP:         ftp://ftp.turbolinux.com.cn/pub/ZWinPro/
###
*/

#ifdef  MAIN_PROGRAM
#define WHERE
#else
#define WHERE extern
#endif
//X Server
WHERE Display *display;
WHERE int screen_num;
WHERE Screen *screen_ptr;

//Input Server
WHERE Window  window1;			//input window
WHERE Window  window2;			//choice window
WHERE Window  window3;			//virtual keyboard window
WHERE Window  parent;					//parent window
WHERE Window  movingwin;				//moving window
WHERE int map_mode;						//mapped? altered by Control-Space
WHERE int dmode,saved_dmode;			//input mode
WHERE int hmode;						//auto-hide mode for overthespot
WHERE int cmode;						//choice window mode for onthespot
WHERE char input_method_gb2312[20];		//input method name for gb2312
WHERE char input_method_gb18030[20];	//input method name for gb18030
WHERE char input_method_big5[20];		//input method name for big5
WHERE char input_method_big5hkscs[20];	//input method name for big5hkscs
WHERE char dict_path[256];				//dictionary path
WHERE int cur_inputmethod;				//current input method by ID
WHERE int boxdrawn;						//used for moving window
WHERE int left, right, top, bottom, press_x, press_y, move_x, move_y;
WHERE int butx, buty;					//
WHERE int index_ime;
WHERE chinput_ime chinputime[MAX_IMES];	//input method from config file
WHERE chinput_conf HZServer;			//all in one :)
WHERE int selection_count;
WHERE char selection_list[10][20];		//selections
WHERE int csock;
WHERE int dsock;
WHERE int docking_live;					// 1 for docking is live, 0 for off

//
WHERE Boolean flag_corner;				//half/full cornered chars
WHERE Boolean flag_punct;				//punctuation
WHERE int flag_lock;					//encoding output locking
WHERE Boolean flag_ec;					//output mode
WHERE Boolean flag_refresh;				//switch input method
WHERE Boolean flag_automode;			//automatic display mode?
WHERE Boolean flag_up, flag_down;		//choice list page up/dow flag
WHERE Boolean flag_english;				//english input leading by 'v'
WHERE int     flag_single;				//single input by '[' or ']'
WHERE char input_buf[80];				//input buf leading by 'v'
WHERE int flag_encoding;				//encoding for client
WHERE int flag_found;					//require selection?
WHERE int flag_showime;					//show the ime in input window
WHERE int flag_client;					//preedit/status area decided by client?
WHERE int width_input_win;				//global var for input win width(caret)
WHERE int width_inputbar;				//inputbar width in chars
WHERE int prev_dmode;					//saved dmode
WHERE int flag_tip;

// Font
WHERE GC boxgc;
WHERE Cursor arrow_cursor;
WHERE GC offspot_gc, offspot_bggc;
WHERE unsigned long foreground_pixel, background_pixel, border_pixel;
WHERE char font_latin[128], font_gb18030[128], font_gb2312[128], font_big5[128], font_big5hkscs[128];
WHERE char color_dim[10], color_light[10], color_panel[10];
WHERE char color_hz[10], color_led[10], color_bar[10];
WHERE XFontStruct *font_info, *hzgb2312font_info, *hzgb18030font_info;
WHERE XFontStruct *hzbig5font_info, *hzbig5hkscsfont_info;
WHERE XFontSet fontset_gb2312, fontset_gb18030, fontset_big5, fontset_big5hkscs;

//XIM
WHERE char gb2312locale[20];
WHERE char gb18030locale[20];
WHERE char big5locale[20];
WHERE char big5hkscslocale[20];
WHERE char deflocale[20];
WHERE char imlocale[256];
WHERE int last_icid;
WHERE int last_connectid;
WHERE IC *current_focus_ic;
WHERE XIMS this_xims;
WHERE char xim_connect[MAX_CONNECT];

//IME Server
WHERE ImmServer_T chinput_imserver;
WHERE IMM *chinput_imm;

//virtual keyboard
WHERE int keytype;
WHERE vk_keys vkkeys[N_KEYS];				//keys on keyboard

//images
#ifdef IMLIB
WHERE ImlibData *icon_id;
WHERE ImlibImage *im_chinput;
WHERE ImlibImage *im_123;
#endif

