Doxygen Source Code Documentation
LiteClueP.h
Go to the documentation of this file.00001 /* 00002 LiteClueP.h - Private definitions for LiteClue widget 00003 See LiteClue documentation 00004 00005 Copyright 1996 COMPUTER GENERATION, INC., 00006 00007 The software is provided "as is", without warranty of any kind, express 00008 or implied, including but not limited to the warranties of 00009 merchantability, fitness for a particular purpose and noninfringement. 00010 In no event shall Computer Generation, inc. nor the author be liable for 00011 any claim, damages or other liability, whether in an action of contract, 00012 tort or otherwise, arising from, out of or in connection with the 00013 software or the use or other dealings in the software. 00014 00015 Permission to use, copy, modify, and distribute this software and its 00016 documentation for any purpose and without fee is hereby granted, 00017 provided that the above copyright notice appear in all copies and that 00018 both that copyright notice and this permission notice appear in 00019 supporting documentation. 00020 00021 Author: 00022 Gary Aviv 00023 Computer Generation, Inc., 00024 gary@compgen.com 00025 00026 */ 00027 /* Revision History: 00028 $Log: LiteClueP.h,v $ 00029 Revision 1.1 1997/11/05 01:14:31 cox 00030 Initial revision 00031 00032 Revision 1.2 1997/06/15 14:08:14 gary 00033 Support for cancel wait period 00034 00035 Revision 1.1 1996/10/19 16:08:51 gary 00036 Initial 00037 00038 00039 $log 00040 Support for cancel wait period 00041 $log 00042 */ 00043 00044 #ifndef _DEF_LiteClueP_h 00045 #define _DEF_LiteClueP_h 00046 00047 #include <X11/ShellP.h> 00048 /* Include public header file for this widget. */ 00049 #ifndef __VMS 00050 # include <LiteClue.h> 00051 #else 00052 # include "LiteClue.h" 00053 #endif 00054 00055 /* Doubly Linked List Processing */ 00056 struct list_thread_str 00057 { 00058 struct list_thread_str * forw; /* next pointer */ 00059 struct list_thread_str * back; /* prev pointer */ 00060 }; 00061 typedef struct list_thread_str ListThread; 00062 00063 00064 typedef struct { 00065 int nothing; /* place holder */ 00066 } LiteClueClassPart; 00067 00068 /* Full class record declaration */ 00069 typedef struct _LiteClueClassRec { 00070 CoreClassPart core_class; 00071 CompositeClassPart composite_class; 00072 ShellClassPart shell_class; 00073 OverrideShellClassPart override_shell_class; 00074 LiteClueClassPart LiteClue_class; 00075 } LiteClueClassRec; 00076 00077 extern LiteClueClassRec xcgLiteClueClassRec; 00078 00079 /* New fields for the LiteClue widget record */ 00080 typedef struct { 00081 /* resources */ 00082 Pixel foreground; 00083 00084 #if XtSpecificationRelease < 5 00085 XFontStruct *font; /* the font for text in box */ 00086 #else 00087 XFontSet fontset; /* the font for text in box */ 00088 #endif 00089 int waitPeriod; /* the delay resource - pointer must be 00090 in watched widget this long before 00091 help is poped - in millisecs 00092 */ 00093 int cancelWaitPeriod; /* after help is popped-down - normal 00094 wait period is cancelled for this 00095 period - in millisecs 00096 */ 00097 00098 /* -------- private state --------- */ 00099 ListThread widget_list; /* list of widgets we are liteClue-ing */ 00100 Dimension font_width; /* width of '1' character */ 00101 Dimension font_height; /* height of font, rows are spaced using this */ 00102 Dimension font_baseline; /* relative displacement to baseline from top */ 00103 GC text_GC; /* for drawing text */ 00104 XtIntervalId interval_id; /* New field, holds timer id */ 00105 Boolean HelpIsUp; /* the help is popup is up */ 00106 Time HelpPopDownTime; /* the time at which help popup was popped down */ 00107 } LiteCluePart; 00108 00109 00110 /* 00111 * Full instance record declaration 00112 */ 00113 typedef struct _LiteClueRec { 00114 CorePart core; 00115 CompositePart composite; 00116 ShellPart shell; 00117 OverrideShellPart override; 00118 LiteCluePart liteClue; 00119 } LiteClueRec; 00120 00121 00122 #endif /* _DEF_LiteClueP_h */ 00123