1 /* $Id: OnConvP.h,v 10.5 1999/05/18 08:53:19 ishisone Exp $ */ 2 /* 3 * Copyright (c) 1990 Software Research Associates, Inc. 4 * Copyright (c) 1999 Kazuki YASUMATSU 5 * 6 * Permission to use, copy, modify, and distribute this software and its 7 * documentation for any purpose and without fee is hereby granted, provided 8 * that the above copyright notice appear in all copies and that both that 9 * copyright notice and this permission notice appear in supporting 10 * documentation, and that the name of Software Research Associates not be 11 * used in advertising or publicity pertaining to distribution of the 12 * software without specific, written prior permission. Software Research 13 * Associates makes no representations about the suitability of this software 14 * for any purpose. It is provided "as is" without express or implied 15 * warranty. 16 * 17 * Author: Makoto Ishisone, Software Research Associates, Inc., Japan 18 * Author: Kazuki YASUMATSU (Kazuki.Yasumatsu@fujixerox.co.jp) 19 */ 20 21 22 #ifndef _OnTheSpotConversionP_h 23 #define _OnTheSpotConversionP_h 24 25 #include "ConvCtrlP.h" 26 #include "OnConv.h" 27 28 #define XtRFeedbackAttributes "FeedbackAttributes" 29 30 typedef struct { 31 ICString seg; /* $B%;%0%a%s%H(B */ 32 } DisplaySegment; 33 34 typedef struct { 35 unsigned long feedbacks[4]; 36 #define FEEDBACK_NOCONV 0 /* for non-converted segment */ 37 #define FEEDBACK_CONV 1 /* converted but not current */ 38 #define FEEDBACK_CURRENT 2 /* converted and current */ 39 #define FEEDBACK_CURRENTSUB 3 /* converted and current subsegment */ 40 } FeedbackAttributes; 41 42 /* 43 * on-the-spot conversion control widget data structure 44 */ 45 46 typedef struct { 47 int empty; 48 } OnTheSpotConversionClassPart; 49 50 typedef struct _OnTheSpotConversionClassRec { 51 CoreClassPart core_class; 52 CompositeClassPart composite_class; 53 ShellClassPart shell_class; 54 WMShellClassPart wm_shell_class; 55 VendorShellClassPart vendor_shell_class; 56 TransientShellClassPart transient_shell_class; 57 ConversionControlClassPart conversionControl_class; 58 OnTheSpotConversionClassPart onTheSpotConversion_class; 59 } OnTheSpotConversionClassRec; 60 61 extern OnTheSpotConversionClassRec onTheSpotConversionClassRec; 62 63 typedef struct { 64 /* resources */ 65 XtCallbackList preeditstartcallback; 66 XtCallbackList preeditdonecallback; 67 XtCallbackList preeditdrawcallback; 68 XtCallbackList preeditcaretcallback; 69 XtCallbackList statusstartcallback; 70 XtCallbackList statusdonecallback; 71 XtCallbackList statusdrawcallback; 72 FeedbackAttributes feedbackattrs; 73 /* private state */ 74 Widget selectionshell; 75 Widget selectionwidget; 76 Widget auxshell; 77 Widget auxwidget; 78 DisplaySegment *dispsegments; 79 Cardinal numsegments; 80 Cardinal dispsegmentsize; 81 ICString *candlist; 82 Cardinal numcands; 83 Boolean selectionpoppedup; 84 Boolean auxpoppedup; 85 Cardinal lastcaret; 86 Boolean fixnotify; 87 } OnTheSpotConversionPart; 88 89 typedef struct _OnTheSpotConversionRec { 90 CorePart core; 91 CompositePart composite; 92 ShellPart shell; 93 WMShellPart wm; 94 VendorShellPart vendor; 95 TransientShellPart transient; 96 ConversionControlPart ccontrol; 97 OnTheSpotConversionPart onthespot; 98 } OnTheSpotConversionRec; 99 100 #endif 101 102