[gnu.g++.bug] G++ Version 1.36.1 bug report

jmsynge@decwin.enet.dec.com (James M Synge, DECwindows/VMS Development 22-Dec-1989 1119) (12/23/89)

I've encountered a bug with g++ 1.36.1 running on a VAX/VMS V5.3 system,
generating output for the VAX (i.e. using tm-vax and the VAX machine
description).

g++ gets a segmentation violation when I am using very large include files
(DECwindows versions of Xlib and Xt).  It has been possible with some of
my other sources to pare the include files down to the used definitions,
and compile with out problems.

Following the first form feed is the command I used to run g++ (GXX on VMS),
and the verbose output, including the VMS traceback.

Following the second form feed is the cpp output.

If you are able 

James Synge

$ gxx /verbose bug.cxx
$ gcc_cpp -+ "-D__cplusplus" WORK2:[JMSYNGE.P.DMVUE]BUG.CXX; GCC_3E802AC4.CPP
$ gcc_cc1 GCC_3E802AC4.CPP -dumpbase WORK2:[JMSYNGE.P.DMVUE]BUG.CXX; -opt -mgnu  -mvaxc-alignment -o GCC_3E802AC4.S
 int __ctype__dummy (...)
 int isalpha (char)
 int isupper (char)
 int islower (char)
 int isdigit (char)
 int isxdigit (char)
 int isspace (char)
 int ispunct (char)
 int isalnum (char)
 int isprint (char)
 int isgraph (char)
 int iscntrl (char)
 int isascii (char)
 int toupper (char)
 int tolower (char)
 int toascii (char)
 StringCl::~StringCl ()
 StringCl::StringCl ()
 StringCl::operator char *()
 int StringCl::length ()
 dmObjectCl::~dmObjectCl ()
 void dmObjectCl::InsertAtHead ()
 class dmObjectCl *static dmObjectCl::FirstObject ()
 class dmObjectCl *dmObjectCl::NextObject ()
 class dmObjectCl *dmObjectCl::PrevObject ()
 class dmObjectCl *static dmObjectCl::LastObject ()
 dmFileCl::~dmFileCl ()
 class StringCl *dmFileCl::ClassName ()
 int main (char **, int)
 void output_command (char *)
 void selectioncallback (struct _WidgetRec *, long unsigned int *, long unsigned int *, long unsigned int *, long unsigned int *, long unsigned int *, int *)

work2:[jmsynge.p.dmvue]dmvue.cxx;:187: Segmentation violation
%SYSTEM-F-ACCVIO, access violation, reason mask=01, virtual address=14000010, PC=000361B6, PSL=03C00000
%TRACE-F-TRACEBACK, symbolic stack dump follows
module name     routine name                     line       rel PC    abs PC

CPLUS-INIT      purpose_member                             0000000C  000361B6
CPLUS-SEARCH    compute_visibility                         00000128  000425F6
CPLUS-SEARCH    lookup_field                               0000034F  00042DA5
CPLUS-TYPECK    require_complete_type                      000016CF  0004E181
CPLUS-TAB       yyparse                                    00001683  00047637
TOPLEV          compile_file                               0000073F  0008DC43
TOPLEV          main                                       0000060A  0008F1FE

# 1 "work2:[jmsynge.p.dmvue]dmvue.cxx;"
 






















 
 
 
 

# 1 "GNU_CC_INCLUDE:[000000]stddef.h" 1



 

typedef long ptrdiff_t;

 

typedef unsigned long size_t;

 




# 29 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2

# 1 "GNU_GXX_INCLUDE:[000000]string.h" 1
 





















 







extern "C" {


extern char* strcpy(char*, const char*);
extern char* strncpy(char*, const char*, int);
extern char* strcat(char*, const char*);
extern char* strncat(char*, const char*, int);

extern char* strchr(const char*, char);
extern char* strrchr(const char*, char);

extern int strcmp(const char*, const char*);
extern int strncmp(const char*, const char*, int);
extern int strlen(const char*);

extern int strspn(const char*, const char*);
extern int strcspn(const char*, const char*);

extern char* strpbrk(const char*, const char*);
extern char* strtok(char*, const char*);

extern char* index(const char*, char);
extern char* rindex(const char*, char);


}



# 30 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2

# 1 "GNU_GXX_INCLUDE:[000000]stdio.h" 1
 





















 






extern "C" {


 


















 

# 1 "GNU_GXX_INCLUDE:[000000]c-stdio.h" 1
 





 




 




 


struct	_iobuf 	{
	int	_cnt;			 
	char	*_ptr;			 
	char	*_base;			 
	char	_flag;			 








	char	_file;			 
	};

 



typedef struct _iobuf *FILE;

 





 




extern FILE *PsectAttributes$$_NOSHR$$stdin$$VCIBD$$ ;
extern FILE *PsectAttributes$$_NOSHR$$stdout$$VCIBD$$ ;
extern FILE *PsectAttributes$$_NOSHR$$stderr$$VCIBD$$ ;
 





 











# 83 "GNU_GXX_INCLUDE:[000000]c-stdio.h"



# 54 "GNU_GXX_INCLUDE:[000000]stdio.h" 2





 


















 




extern FILE* fopen(const char* name, const char* type);
extern FILE* fdopen(int fd, const char* type);
extern FILE* freopen(const char* name, const char* type, FILE*);
extern int fclose(FILE*);
extern FILE* popen(const char* command, const char* type);
extern int pclose(FILE*);

extern int fread(char*, unsigned int, int, FILE*);
extern int fwrite(const char*, unsigned int, int, FILE*);
extern int fseek(FILE*, long, int);
extern long ftell(const FILE*);
extern int fflush(FILE*);
extern void rewind(FILE*);

extern char* fgets(char*, int, FILE*);
extern char* gets(char*);
extern int puts(const char*);
extern int fputs(const char*, FILE*);
extern int getw(FILE*);
extern int fgetc(FILE*);
extern int putw(int, FILE*);
extern int fputc(int, FILE*);
extern int ungetc(int, FILE*);

extern int printf(const char* ...);
extern int fprintf(FILE*, const char* ...);
extern int sprintf(char*, const char* ...);
extern int scanf(const char* ...);
extern int fscanf(FILE*, const char* ...);
extern int sscanf(char*, const char* ...);





extern void setbuf(FILE*, char*);

extern int _filbuf(FILE*);
extern int _flsbuf(unsigned, FILE*);

extern FILE* tmpfile();
extern char* ctermid(char*);
extern char* cuserid(char*);
extern char* tempnam(char*, char*);
extern char* tmpnam(char*);


}



# 31 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2

# 1 "GNU_GXX_INCLUDE:[000000]stdlib.h" 1
 





















 







extern "C" {


extern int atoi(const char*);
extern double atof(const char*);
extern long atol(const char*);
extern double strtod(const char*, char**);
extern long strtol(const char*, char**, int);

extern char** environ;

extern int abort();
extern void exit(int);
extern char* getenv(const char*);
extern int system(const char*);

extern int rand();
extern void srand(unsigned);

void *calloc(size_t nobj, size_t size);
void *malloc(size_t size);
void *realloc(void *ptr, size_t size);
void free (void *ptr);


}



# 32 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2


extern "C" {


# 1 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 1
 












































 









# 1 "GNU_GXX_INCLUDE:[000000]string.h" 1
 





















 



# 59 "GNU_GXX_INCLUDE:[000000]string.h"

# 56 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2

# 1 "GNU_GXX_INCLUDE:[000000]ctype.h" 1
 
 
 
 
   

#pragma once

   
static const int _U = 01;
static const int _L = 02;
static const int _N = 04;
static const int _S = 010;
static const int _P = 020;
static const int _C = 040;





static const int _X = 0100;
static const int _B = 0200;

















extern	char 	PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ [];

   
 



extern "C" {
	extern c$v_ctypedefs();
	static __ctype__dummy(){c$v_ctypedefs();}
};

inline int isalpha(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&(_U|_L)); }
inline int isupper(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&_U); }
inline int islower(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&_L); }
inline int isdigit(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&_N); }
inline int isxdigit(char c) { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&_X); }
inline int isspace(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&_S); }
inline int ispunct(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&_P); }
inline int isalnum(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&(_U|_L|_N)); }
inline int isprint(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&(_P|_U|_L|_N|_B)); }
inline int isgraph(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&(_P|_U|_L|_N)); }
inline int iscntrl(char c)  { return ((PsectAttributes$$_NOWRT$$_ctype_$$VCIBD$$ +1)[c]&_C); }
inline int isascii(char c)  { return ((unsigned)(c)<=0177); }
inline int toupper(char c)  { return ((c)-'a'+'A'); }
inline int tolower(char c)  { return ((c)-'A'+'a'); }
inline int toascii(char c)  { return ((c)&0177); }











# 57 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2


# 1 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 



 













































# 1 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 



 














































# 79 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h"

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Xlib.h" 1
 




















































# 1 "GNU_CC_INCLUDE:[000000]types.h" 1
 





typedef long int time_t;

# 54 "GNU_CC_INCLUDE:[000000.decw$include]Xlib.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]X.h" 1
 








































 

typedef unsigned long XID;

typedef XID Window;
typedef XID Drawable;
typedef XID Font;
typedef XID Pixmap;
typedef XID Cursor;
typedef XID Colormap;
typedef XID GContext;
typedef XID KeySym;

typedef unsigned long Mask;

typedef unsigned long Atom;

typedef unsigned long VisualID;

typedef unsigned long Time;

typedef unsigned char KeyCode;

 






























 



 





























 







































 











 












 











 









 







		       
 










 





 




 






 




 




 




 







 










 





 














# 318 "GNU_CC_INCLUDE:[000000.decw$include]X.h"











 



 
 




 

















 










 













 



 





 





 




 





 







 




 





 



 


















 





 






 





 






 




 




 






 




 





 




 



























 



 






 



 





 



 





 





 



 





 










 


















 














 




 



 




 




 











 




 






# 55 "GNU_CC_INCLUDE:[000000.decw$include]Xlib.h" 2














 






































 






















 


typedef struct _XExtData {
	int number;		 
	struct _XExtData *next;	 
	int (*free_private)();	 
	char *private_data;	 
} XExtData;

 


typedef struct {		 
	int extension;		 
	int major_opcode;	 
	int first_event;	 
	int first_error;	 
} XExtCodes;

 


typedef struct _XExten {	 
	struct _XExten *next;	 
	XExtCodes codes;	 
	int (*create_GC)();	 
	int (*copy_GC)();	 
	int (*flush_GC)();	 
	int (*free_GC)();	 
	int (*create_Font)();	 
	int (*free_Font)();	 
	int (*close_display)();	 
	int (*error)();		 
	int (*error_string)();   
	char *name;		 
} _XExtension;

 



typedef struct {
	int depth;
	int bits_per_pixel;
	int scanline_pad;
} XPixmapFormatValues;

 


typedef struct {
	int function;		 
	unsigned long plane_mask; 
	unsigned long foreground; 
	unsigned long background; 
	int line_width;		 
	int line_style;	 	 
	int cap_style;	  	 

	int join_style;	 	 
	int fill_style;	 	 

	int fill_rule;	  	 
	int arc_mode;		 
	Pixmap tile;		 
	Pixmap stipple;		 
	int ts_x_origin;	 
	int ts_y_origin;
        Font font;	         
	int subwindow_mode;      
	int  graphics_exposures; 
	int clip_x_origin;	 
	int clip_y_origin;
	Pixmap clip_mask;	 
	int dash_offset;	 
	char dashes;
} XGCValues;

 






typedef struct _XGC {
    XExtData *ext_data;	 
    GContext gid;	 
    int  rects;		 
    int  dashes;	 
    unsigned long dirty; 
    XGCValues values;	 
} *GC;


 


typedef struct {
	XExtData *ext_data;	 
	VisualID visualid;	 
	int class;		 
	unsigned long red_mask, green_mask, blue_mask;	 
	int bits_per_rgb;	 
	int map_entries;	 
} Visual;

 

	
typedef struct {
	int depth;		 
	int nvisuals;		 
	Visual *visuals;	 
} Depth;

 


typedef struct {
	XExtData *ext_data;	 
	struct _XDisplay *display; 
	Window root;		 
	int width, height;	 
	int mwidth, mheight;	 
	int ndepths;		 
	Depth *depths;		 
	int root_depth;		 
	Visual *root_visual;	 
	GC default_gc;		 
	Colormap cmap;		 
	unsigned long white_pixel;
	unsigned long black_pixel;	 
	int max_maps, min_maps;	 
	int backing_store;	 
	int  save_unders;	
	long root_input_mask;	 
} Screen;

 


typedef struct {
	XExtData *ext_data;	 
	int depth;		 
	int bits_per_pixel;	 
	int scanline_pad;	 
} ScreenFormat;


 


typedef struct {
    Pixmap background_pixmap;	 
    unsigned long background_pixel;	 
    Pixmap border_pixmap;	 
    unsigned long border_pixel;	 
    int bit_gravity;		 
    int win_gravity;		 
    int backing_store;		 
    unsigned long backing_planes; 
    unsigned long backing_pixel; 
    int  save_under;		 
    long event_mask;		 
    long do_not_propagate_mask;	 
    int  override_redirect;	 
    Colormap colormap;		 
    Cursor cursor;		 
} XSetWindowAttributes;

typedef struct {
    int x, y;			 
    int width, height;		 
    int border_width;		 
    int depth;          	 
    Visual *visual;		 
    Window root;        	 
    int class;			 
    int bit_gravity;		 
    int win_gravity;		 
    int backing_store;		 
    unsigned long backing_planes; 
    unsigned long backing_pixel; 
    int  save_under;		 
    Colormap colormap;		 
    int  map_installed;		 
    int map_state;		 
    long all_event_masks;	 
    long your_event_mask;	 
    long do_not_propagate_mask;  
    int  override_redirect;	 
    Screen *screen;		 
} XWindowAttributes;

 




typedef struct {
	int family;		 
	int length;		 
	char *address;		 
} XHostAddress;

 


typedef struct _XImage {
    int width, height;		 
    int xoffset;		 
    int format;			 
    char *data;			 
    int byte_order;		 
    int bitmap_unit;		 
    int bitmap_bit_order;	 
    int bitmap_pad;		 
    int depth;			 
    int bytes_per_line;		 
    int bits_per_pixel;		 
    unsigned long red_mask;	 
    unsigned long green_mask;
    unsigned long blue_mask;
    char *obdata;		 
    struct funcs {		 
	struct _XImage *(*create_image)();
	int (*destroy_image)();
	unsigned long (*get_pixel)();
	int (*put_pixel)();
	struct _XImage *(*sub_image)();
	int (*add_pixel)();
	} f;
} XImage;

 


typedef struct {
    int x, y;
    int width, height;
    int border_width;
    Window sibling;
    int stack_mode;
} XWindowChanges;

 


typedef struct {
	unsigned long pixel;
	unsigned short red, green, blue;
	char flags;   
	char pad;
} XColor;

 




typedef struct {
    short x1, y1, x2, y2;
} XSegment;

typedef struct {
    short x, y;
} XPoint;
    
typedef struct {
    short x, y;
    unsigned short width, height;
} XRectangle;
    
typedef struct {
    short x, y;
    unsigned short width, height;
    short angle1, angle2;
} XArc;


 

typedef struct {
        int key_click_percent;
        int bell_percent;
        int bell_pitch;
        int bell_duration;
        int led;
        int led_mode;
        int key;
        int auto_repeat_mode;    
} XKeyboardControl;

 

typedef struct {
        int key_click_percent;
	int bell_percent;
	unsigned int bell_pitch, bell_duration;
	unsigned long led_mask;
	int global_auto_repeat;
	char auto_repeats[32];
} XKeyboardState;

 

typedef struct {
        Time time;
	short x, y;
} XTimeCoord;

 

typedef struct {
 	int max_keypermod;	 
 	KeyCode *modifiermap;	 
} XModifierKeymap;

XModifierKeymap *XNewModifiermap(),
		*XGetModifierMapping(),
		*XDeleteModifiermapEntry(),
		*XInsertModifiermapEntry();


# 482 "GNU_CC_INCLUDE:[000000.decw$include]Xlib.h"


typedef struct _AsyncItem {
    struct _AsyncItem *next;
    Window window;
    struct EventsData {
	int (*proc)();
	unsigned long *data;
    } *events;
} _XAsyncItem;

 



struct _DisplayAtoms {
    Atom text;
    Atom wm_state;
    Atom wm_protocols;
    Atom wm_save_yourself;
    Atom wm_change_state;
    Atom wm_colormap_windows;
     
};


 


typedef struct _XDisplay {
	XExtData *ext_data;	 
	struct _XDisplay *next;  
	int fd;			 
				 
	int lock;		 
	int proto_major_version; 
	int proto_minor_version; 
	char *vendor;		 
        long resource_base;	 
	long resource_mask;	 
	long resource_id;	 
	int resource_shift;	 
	XID (*resource_alloc)();  
	int byte_order;		 
	int bitmap_unit;	 
	int bitmap_pad;		 
	int bitmap_bit_order;	 
	int nformats;		 
	ScreenFormat *pixmap_format;	 
	int vnumber;		 
	int release;		 
	struct _XSQEvent *head, *tail;	 
	int qlen;		 
	unsigned long last_request_read; 
	unsigned long request;	 
	char *last_req;		 
	char *buffer;		 
	char *bufptr;		 
	char *bufmax;		 
	unsigned max_request_size;  
	struct _XrmHashBucketRec *db;
	int (*synchandler)();	 
	char *display_name;	 
	int default_screen;	 
	int nscreens;		 
	Screen *screens;	 
	unsigned long motion_buffer;	 
	Window current;		 
	int min_keycode;	 
	int max_keycode;	 
	KeySym *keysyms;	 
	XModifierKeymap *modifiermap;	 
	int keysyms_per_keycode; 
	char *xdefaults;	 
	char *scratch_buffer;	 
	unsigned long scratch_length;	 
	int ext_number;		 
	_XExtension *ext_procs;	 
	 







	int  (*event_vec[128])();      
	int  (*wire_vec[128])();     

	char *xcb;		       





	struct _AsyncItem *asynchead, *asynctail;
						 
	KeySym lock_meaning;	    
	struct XKeytrans *key_bindings;  
	Font cursor_font;	    
	 


	struct _DisplayAtoms *atoms;
	struct {			 
	    long sequence_number;
	    int (*old_handler)();
	    int  succeeded;
	} reconfigure_wm_window;

	int efn;	 


} Display;


 











 


typedef struct {
	int type;		 
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;	         
	Window root;	         
	Window subwindow;	 
	Time time;		 
	int x, y;		 
	int x_root, y_root;	 
	unsigned int state;	 
	unsigned int keycode;	 
	int  same_screen;	 
} XKeyEvent;
typedef XKeyEvent XKeyPressedEvent;
typedef XKeyEvent XKeyReleasedEvent;

typedef struct {
	int type;		 
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;	         
	Window root;	         
	Window subwindow;	 
	Time time;		 
	int x, y;		 
	int x_root, y_root;	 
	unsigned int state;	 
	unsigned int button;	 
	int  same_screen;	 
} XButtonEvent;
typedef XButtonEvent XButtonPressedEvent;
typedef XButtonEvent XButtonReleasedEvent;

typedef struct {
	int type;		 
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;	         
	Window root;	         
	Window subwindow;	 
	Time time;		 
	int x, y;		 
	int x_root, y_root;	 
	unsigned int state;	 
	char is_hint;		 
	int  same_screen;	 
} XMotionEvent;
typedef XMotionEvent XPointerMovedEvent;

typedef struct {
	int type;		 
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;	         
	Window root;	         
	Window subwindow;	 
	Time time;		 
	int x, y;		 
	int x_root, y_root;	 
	int mode;		 
	int detail;
	 



	int  same_screen;	 
	int  focus;		 
	unsigned int state;	 
} XCrossingEvent;
typedef XCrossingEvent XEnterWindowEvent;
typedef XCrossingEvent XLeaveWindowEvent;

typedef struct {
	int type;		 
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;		 
	int mode;		 
	int detail;
	 




} XFocusChangeEvent;
typedef XFocusChangeEvent XFocusInEvent;
typedef XFocusChangeEvent XFocusOutEvent;

 
typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	char key_vector[32];
} XKeymapEvent;	

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	int x, y;
	int width, height;
	int count;		 
} XExposeEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Drawable drawable;
	int x, y;
	int width, height;
	int count;		 
	int major_code;		 
	int minor_code;		 
} XGraphicsExposeEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Drawable drawable;
	int major_code;		 
	int minor_code;		 
} XNoExposeEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	int state;		 
} XVisibilityEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window parent;		 
	Window window;		 
	int x, y;		 
	int width, height;	 
	int border_width;	 
	int  override_redirect;	 
} XCreateWindowEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window event;
	Window window;
} XDestroyWindowEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window event;
	Window window;
	int  from_configure;
} XUnmapEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window event;
	Window window;
	int  override_redirect;	 
} XMapEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window parent;
	Window window;
} XMapRequestEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window event;
	Window window;
	Window parent;
	int x, y;
	int  override_redirect;
} XReparentEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window event;
	Window window;
	int x, y;
	int width, height;
	int border_width;
	Window above;
	int  override_redirect;
} XConfigureEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window event;
	Window window;
	int x, y;
} XGravityEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	int width, height;
} XResizeRequestEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window parent;
	Window window;
	int x, y;
	int width, height;
	int border_width;
	Window above;
	int detail;		 
	unsigned long value_mask;
} XConfigureRequestEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window event;
	Window window;
	int place;		 
} XCirculateEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window parent;
	Window window;
	int place;		 
} XCirculateRequestEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	Atom atom;
	Time time;
	int state;		 
} XPropertyEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	Atom selection;
	Time time;
} XSelectionClearEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window owner;		
	Window requestor;
	Atom selection;
	Atom target;
	Atom property;
	Time time;
} XSelectionRequestEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window requestor;
	Atom selection;
	Atom target;
	Atom property;		 
	Time time;
} XSelectionEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	Colormap colormap;	 
	int  _new ;
	int state;		 
} XColormapEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;
	Atom message_type;
	int format;
	union {
		char b[20];
		short s[10];
		long l[5];
		} data;
} XClientMessageEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display;	 
	Window window;		 
	int request;		 

	int first_keycode;	 
	int count;		 
} XMappingEvent;

typedef struct {
	int type;
	Display *display;	 
	XID resourceid;		 
	unsigned long serial;		 
	unsigned char error_code;	 
	unsigned char request_code;	 
	unsigned char minor_code;	 
} XErrorEvent;

typedef struct {
	int type;
	unsigned long serial;	 
	int  send_event;	 
	Display *display; 
	Window window;	 
} XAnyEvent;

 



typedef union _XEvent {
        int type;		 
	XAnyEvent xany;
	XKeyEvent xkey;
	XButtonEvent xbutton;
	XMotionEvent xmotion;
	XCrossingEvent xcrossing;
	XFocusChangeEvent xfocus;
	XExposeEvent xexpose;
	XGraphicsExposeEvent xgraphicsexpose;
	XNoExposeEvent xnoexpose;
	XVisibilityEvent xvisibility;
	XCreateWindowEvent xcreatewindow;
	XDestroyWindowEvent xdestroywindow;
	XUnmapEvent xunmap;
	XMapEvent xmap;
	XMapRequestEvent xmaprequest;
	XReparentEvent xreparent;
	XConfigureEvent xconfigure;
	XGravityEvent xgravity;
	XResizeRequestEvent xresizerequest;
	XConfigureRequestEvent xconfigurerequest;
	XCirculateEvent xcirculate;
	XCirculateRequestEvent xcirculaterequest;
	XPropertyEvent xproperty;
	XSelectionClearEvent xselectionclear;
	XSelectionRequestEvent xselectionrequest;
	XSelectionEvent xselection;
	XColormapEvent xcolormap;
	XClientMessageEvent xclient;
	XMappingEvent xmapping;
	XErrorEvent xerror;
	XKeymapEvent xkeymap;
	long pad[24];
} XEvent;
 


typedef struct _XSQEvent {
    struct _XSQEvent *next;
    XEvent event;
} _XQEvent;




 


typedef struct {
    short	lbearing;	 
    short	rbearing;	 
    short	width;		 
    short	ascent;		 
    short	descent;	 
    unsigned short attributes;	 
} XCharStruct;

 



typedef struct {
    Atom name;
    unsigned long card32;
} XFontProp;

typedef struct {
    XExtData	*ext_data;	 
    Font        fid;             
    unsigned	direction;	 
    unsigned	min_char_or_byte2; 
    unsigned	max_char_or_byte2; 
    unsigned	min_byte1;	 
    unsigned	max_byte1;	 
    int 	all_chars_exist; 
    unsigned	default_char;	 
    int         n_properties;    
    XFontProp	*properties;	 
    XCharStruct	min_bounds;	 
    XCharStruct	max_bounds;	 
    XCharStruct	*per_char;	 
    int		ascent;		 
    int		descent;	 
} XFontStruct;

 


typedef struct {
    char *chars;		 
    int nchars;			 
    int delta;			 
    Font font;			 
} XTextItem;

typedef struct {		 
    unsigned char byte1;
    unsigned char byte2;
} XChar2b;

typedef struct {
    XChar2b *chars;		 
    int nchars;			 
    int delta;			 
    Font font;			 
} XTextItem16;


XFontStruct *XLoadQueryFont(), *XQueryFont();

XTimeCoord *XGetMotionEvents();

typedef union { Display *display;
		GC gc;
		Visual *visual;
		Screen *screen;
		ScreenFormat *pixmap_format;
		XFontStruct *font; } XEDataObject;

 


Display *XOpenDisplay();

char *XFetchBytes();
char *XFetchBuffer();
char *XGetAtomName();
char *XGetDefault();
char *XDisplayName();
char *XKeysymToString();

int (*XSynchronize())();
int (*XSetAfterFunction())();
Atom XInternAtom();
Colormap XCopyColormapAndFree(), XCreateColormap();
Cursor XCreatePixmapCursor(), XCreateGlyphCursor(), XCreateFontCursor();
Font XLoadFont();
GC XCreateGC();
GContext XGContextFromGC();
Pixmap XCreatePixmap();
Pixmap XCreateBitmapFromData(), XCreatePixmapFromBitmapData();
Window XCreateSimpleWindow(), XGetSelectionOwner(), XGetIconWindow();
Window XCreateWindow(); 
Colormap *XListInstalledColormaps();
char **XListFonts(), **XListFontsWithInfo(), **XGetFontPath();
char **XListExtensions();
Atom *XListProperties();
XImage *XCreateImage(), *XGetImage(), *XGetSubImage();
XHostAddress *XListHosts();
KeySym XKeycodeToKeysym(), XLookupKeysym(), *XGetKeyboardMapping();
KeySym XStringToKeysym();
long XMaxRequestSize();
char *XResourceManagerString();
unsigned long XDisplayMotionBufferSize();
VisualID XVisualIDFromVisual();
int  XGetSizeHints();

 
XExtCodes *XInitExtension();
int (*XESetCreateGC())(), (*XESetCopyGC())(), (*XESetFlushGC())(),
    (*XESetFreeGC())(), (*XESetCreateFont())(), (*XESetFreeFont())(), 
    (*XESetCloseDisplay())(), (*XESetError())(), (*XESetErrorString())();
int  (*XESetWireToEvent())();
int  (*XESetEventToWire())();
XExtCodes *XAddExtension();
XExtData *XFindOnExtensionList();
XExtData **XEHeadOfExtensionList();

 
Window XRootWindow(), XDefaultRootWindow(), XRootWindowOfScreen();
Visual *XDefaultVisual(), *XDefaultVisualOfScreen();
GC XDefaultGC(), XDefaultGCOfScreen();
unsigned long XBlackPixel(), XWhitePixel(), XAllPlanes();
unsigned long XBlackPixelOfScreen(), XWhitePixelOfScreen();
unsigned long XNextRequest(), XLastKnownRequestProcessed();
char *XServerVendor(), *XDisplayString();
Colormap XDefaultColormap(), XDefaultColormapOfScreen();
Display *XDisplayOfScreen();
Screen *XScreenOfDisplay(), *XDefaultScreenOfDisplay();
long XEventMaskOfScreen();
int XScreenNumberOfScreen();

int (*XSetErrorHandler())(), (*XSetIOErrorHandler())();
XPixmapFormatValues *XListPixmapFormatValues();

 


Atom *XInternAtoms();
int  XReconfigureWMWindow();
int XGeometryMaskToGravity(), XWMGeometry();
int  XGetWMSizeHints(), XGetWMNormalHints();
int  XGetRGBColormap();
int  XGetTextProperty(), XGetWMName(), XGetWMIconName();
int  XGetWMClientMachine(), XGetWMCommand();
int  XGetWMColormapWindows(), XSetWMColormapWindows();
int  XGetWMProtocols(), XSetWMProtocols();
int  XGetWMState(), XSetWMState();
int  XIconifyWindow(), XWithdrawWindow();
void XSetWMProperties(), XSetWMSizeHints(), XSetWMNormalHints();
void XSetRGBColormap();
void XSetTextProperty(), XSetWMName(), XSetWMIconName();
void XSetWMClientMachine(), XSetWMCommand();
int  XStringListToTextProperty(), XTextPropertyToStringList();
void XFreeStringList();
int  XGetSizeHints();


# 80 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Xutil.h" 1
 




































 












 



typedef struct {
    	long flags;	 
	int x, y;
	int width, height;
	int min_width, min_height;
	int max_width, max_height;
    	int width_inc, height_inc;
	struct {
		int x;	 
		int y;	 
	} min_aspect, max_aspect;
	int base_width, base_height;
	int win_gravity;
} XSizeHints;

 


typedef struct {
    	long flags;	
	int x, y;
	int width, height;
	int min_width, min_height;
	int max_width, max_height;
    	int width_inc, height_inc;
	struct {
		int x;	 
		int y;	 
	} min_aspect, max_aspect;
} XOldSizeHints;

 




 
















typedef struct {
	long flags;	 
	int  input;	 

	int initial_state;	 
	Pixmap icon_pixmap;	 
	Window icon_window; 	 
	int icon_x, icon_y; 	 
	Pixmap icon_mask;	 
	XID window_group;	 
	 
} XWMHints;

 














 







 



typedef struct {
    unsigned char *value;		 
    Atom encoding;			 
    int format;				 
    unsigned long nitems;		 
} XTextProperty;

typedef struct {
    long flags;				 
    int state;
    Window icon_window;
} XWMState;
    



typedef struct {
	int min_width, min_height;
	int max_width, max_height;
	int width_inc, height_inc;
} XIconSize;

typedef struct {
	char *res_name;
	char *res_class;
} XClassHint;

 














 


typedef struct _XComposeStatus {
    char *compose_ptr;		 
    int chars_matched;		 
} XComposeStatus;

 




















 


typedef struct _XRegion *Region; 

 





 




typedef struct {
  Visual *visual;
  VisualID visualid;
  int screen;
  int depth;
  int class;
  unsigned long red_mask;
  unsigned long green_mask;
  unsigned long blue_mask;
  int colormap_size;
  int bits_per_rgb;
} XVisualInfo;













 




typedef struct {
	Colormap colormap;
	unsigned long red_max;
	unsigned long red_mult;
	unsigned long green_max;
	unsigned long green_mult;
	unsigned long blue_max;
	unsigned long blue_mult;
	unsigned long base_pixel;
	unsigned long visualid;
	unsigned long killid;
} XStandardColormap;



 






 



 






 





typedef int XContext;



extern int XUniqueContext();

extern int XSaveContext();  
     
     
     

extern int XFindContext();  
     
     
     
     

extern int XDeleteContext();  
     
     


XWMHints *XGetWMHints();
Region XCreateRegion(), XPolygonRegion();
XImage *XCreateImage();

XVisualInfo *XGetVisualInfo();

 



XSizeHints *XAllocSizeHints ();
XStandardColormap *XAllocStandardColormap ();
XWMHints *XAllocWMHints ();
XClassHint *XAllocClassHint ();
XIconSize *XAllocIconSize ();
XWMState *XAllocWMState ();


# 81 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Xresource.h" 1
 




































 











 






# 1 "GNU_CC_INCLUDE:[000000]types.h" 1
 







# 57 "GNU_CC_INCLUDE:[000000.decw$include]Xresource.h" 2

# 68 "GNU_CC_INCLUDE:[000000.decw$include]Xresource.h"



typedef char * caddr_t;







 





extern char *Xpermalloc();
     

 





typedef int     XrmQuark, *XrmQuarkList;


typedef char *XrmString;


 
extern XrmQuark XrmStringToQuark();  
     

 
extern XrmString XrmQuarkToString();  
     

extern XrmQuark XrmUniqueQuark();




 





extern void XrmStringToQuarkList();
     
        

extern void XrmStringToBindingQuarkList();
     
        
        


 





typedef XrmQuark     XrmName;
typedef XrmQuarkList XrmNameList;




typedef XrmQuark     XrmClass;
typedef XrmQuarkList XrmClassList;






 





typedef XrmQuark     XrmRepresentation;



typedef struct {
    unsigned int    size;
    caddr_t	    addr;
} XrmValue, *XrmValuePtr;


 





typedef enum {XrmBindTightly, XrmBindLoosely} XrmBinding, *XrmBindingList;

typedef struct _XrmHashBucketRec *XrmHashBucket;
typedef XrmHashBucket *XrmHashTable;
typedef XrmHashTable XrmSearchList[];
typedef struct _XrmHashBucketRec *XrmDatabase;


extern void XrmInitialize();

extern void XrmQPutResource();
     
     
     
     
     

extern void XrmPutResource();
     
     
     
     

extern void XrmQPutStringResource();
     
     
     
     

extern void XrmPutStringResource();
     
     
     

extern void XrmPutLineResource();
     
     

extern  XrmQGetResource();
     
     
     
        
        

extern int  XrmGetResource();
     
     
     
        
        

extern int  XrmQGetSearchList();
     
     
     
        
     

extern int  XrmQGetSearchResource();
     
     
     
        
        

 





extern XrmDatabase XrmGetFileDatabase();
     

extern XrmDatabase XrmGetStringDatabase();
        

extern void XrmPutFileDatabase();
     
     

extern void XrmMergeDatabases();
     
        




 





typedef enum {
    XrmoptionNoArg,	 
    XrmoptionIsArg,      
    XrmoptionStickyArg,  
    XrmoptionSepArg,     
    XrmoptionResArg,	 
    XrmoptionSkipArg,    
    XrmoptionSkipLine    
} XrmOptionKind;

typedef struct {
    char	    *option;	     
    char	    *specifier;      
    XrmOptionKind   argKind;	     
    caddr_t	    value;	     
} XrmOptionDescRec, *XrmOptionDescList;

extern void XrmParseCommand();
     
     
     
     
     
     




 
# 82 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000]types.h" 1
 







# 83 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

 
























typedef char *String;
typedef struct _WidgetRec *Widget;

typedef struct _ObjectRec *Object;

typedef struct _RectObjRec *RectObj;
typedef struct _WindowObjRec *WindowObj;
typedef Widget *WidgetList;
typedef struct _ObjectClassRec *ObjectClass;
typedef struct _RectObjClassRec *RectObjClass;
typedef struct _WindowObjClassRec *WindowObjClass;
typedef struct _WidgetClassRec *WidgetClass;
typedef struct _CompositeRec *CompositeWidget;
typedef struct _XtActionsRec *XtActionList;
typedef struct _XtEventRec *XtEventTable;
typedef struct _XtBoundAccActionRec *XtBoundAccActions;
typedef unsigned int   Cardinal;
typedef unsigned short  ShortCard;
typedef char	Boolean;
typedef unsigned long	*Opaque;
typedef struct _XtAppStruct *XtAppContext;
typedef unsigned long   XtValueMask;
typedef unsigned long   XtIntervalId;
typedef unsigned long   XtInputId;
typedef unsigned long	XtWorkProcId;
typedef unsigned int    XtGeometryMask;
typedef unsigned long   XtGCMask;    
typedef unsigned long   Pixel;	     
typedef short		Position;    
typedef ShortCard	Dimension;   

 


















typedef long XtArgVal;


# 1 "GNU_CC_INCLUDE:[000000.decw$include]Object.h" 1
 



 














































extern  ObjectClass objectClass;


 
# 162 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]RectObj.h" 1
 



 














































extern  RectObjClass rectObjClass;


 
# 163 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]WindowObj.h" 1
 



 














































extern  WindowObjClass windowObjClass;


 
# 164 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Core.h" 1
 
 
 
 
 
 
 
 
 
 
 



 














































extern  WidgetClass widgetClass;



 
# 165 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Composite.h" 1
 
 
 
 
 
 
 
 
 
 
 
 



 













































typedef struct _CompositeClassRec *CompositeWidgetClass;

extern void XtManageChildren ();
     
     

extern void XtManageChild ();
     

extern void XtUnmanageChildren ();
     
     

extern void XtUnmanageChild ();
     



extern  WidgetClass compositeWidgetClass;



 
# 166 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]CompObj.h" 1
 


 













































typedef struct _CompositeObjectClassRec *CompositeObjectClass;
typedef struct _CompositeObjRec *CompositeObject;


extern  WidgetClass compositeObjectClass;


# 167 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Constraint.h" 1
 
 
 
 
 
 
 
 
 
 
 



 













































typedef struct _ConstraintClassRec *ConstraintWidgetClass;


extern  WidgetClass constraintWidgetClass;



 
# 168 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Convert.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 













































extern void _XtConvertInitialize();

 





extern void XtStringConversionWarning();
        
        

typedef void (*XtConverter)();
     
     
     
     

typedef enum {
 
 
    XtAddress,      	 
    XtBaseOffset,   	 
    XtImmediate,    	 
    XtResourceString,	 
    XtResourceQuark	 
} XtAddressMode;

typedef struct {
    XtAddressMode   address_mode;
    caddr_t	    address_id;
    Cardinal	    size;
} XtConvertArgRec, *XtConvertArgList;









extern void XtAppAddConverter();
     
     
     
     
     
     


extern void XtAddConverter();
     
     
     
     
     

extern void XtConvert();
     
     
     
     
        


extern void XtDirectConvert();
     
     
     
     
        



 
# 169 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Translate.h" 1
 


 













































typedef struct _TranslationData *XtTranslations;
typedef struct _TranslationData *XtAccelerators;
typedef unsigned int Modifiers;
 






typedef void (*XtActionProc)();
     
     
     
     

typedef XtActionProc* XtBoundActions;

typedef struct _XtActionsRec{
    char    *string;
    XtActionProc proc;
} XtActionsRec;

extern XtTranslations XtParseTranslationTable();  
     


extern XtAccelerators XtParseAcceleratorTable();
    

extern void XtOverrideTranslations();  
     
     

extern void XtAugmentTranslations();  
     
     

extern void XtInstallAccelerators();
    

extern void XtInstallAllAccelerators();
   

extern void XtUninstallTranslations();
    

extern void XtAddActions();  
    
    


extern void XtAppAddActions();  
    
    
    


 





typedef void (*XtKeyProc)();
 








extern void XtTranslateKeycode();
 







extern void XtTranslateKey();
 








extern void XtSetKeyTranslator();
 



typedef void (*XtCaseProc)();
 





extern void XtRegisterCaseConverter();
 





extern void XtConvertCase();
 






# 170 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Event.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


 













































 





typedef void (*XtEventHandler)();  
     
     
     

typedef void (*XtAsyncHandler)();  
     

typedef unsigned long EventMask;


extern void XtAddEventHandler();  
     
     
     
     
     


extern void XtRemoveEventHandler();  
     
     
     
     
     


extern void XtAddRawEventHandler();  
     
     
     
     
     


extern void XtRemoveRawEventHandler();  
     
     
     
     
     

extern EventMask XtBuildEventMask();  
     

extern void XtAddGrab();
     
     
     

extern void XtRemoveGrab();
     

extern void XtDispatchEvent();  
     

extern void XtProcessEvent();
     

extern void XtAppProcessEvent();
     
     

extern void XtMainLoop();

extern void XtAppMainLoop();
     

extern void XtAddExposureToRegion();
     
     

extern void XtSetAsyncEventHandler();  
     
     

extern void XtMakeToolkitAsync();

 





typedef unsigned long	XtInputMask;






typedef void (*XtTimerCallbackProc)();
     
     

extern XtIntervalId XtAddTimeOut();
     
     
     

extern XtIntervalId XtAppAddTimeOut();
     
     
     
     

extern void XtRemoveTimeOut();
     

typedef void (* XtInputCallbackProc)();
     
     
     

extern XtInputId XtAddInput();  
     
     
     
     

extern XtInputId XtAppAddInput();  
     
     
     
     
     

extern void XtRemoveInput();  
     

extern void XtNextEvent();  
     

extern void XtAppNextEvent();
     
     

extern Boolean XtPeekEvent();  
     

extern Boolean XtAppPeekEvent();
     
     






extern XtInputMask XtPending ();

extern XtInputMask XtAppPending();
     


extern void XtSetKeyboardFocus();
     


# 171 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 2

 










# 204 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h"


extern Boolean XtIsSubclass ();
     
     











extern void XtRealizeWidget ();
     

void XtUnrealizeWidget ();  
     

extern void XtDestroyWidget ();
     

extern void XtSetSensitive ();
     
     

extern void XtSetMappedWhenManaged ();
     
     

extern Widget XtNameToWidget();  
     
     

extern Widget XtWindowToWidget();  
     
     


extern Boolean XtCallAcceptFocus();  
     
     


 





typedef struct {
    String	name;
    XtArgVal	value;
} Arg, *ArgList;




extern ArgList XtMergeArgLists();  
     
     
     
     

 







 

extern Display *XtDisplay();
     

extern Screen *XtScreen();
     

extern Window XtWindow();
     

extern WidgetClass XtSuperclass();
     

extern WidgetClass XtClass();
     

extern Boolean XtIsManaged();
     

extern Boolean XtIsRealized ();
     

extern Boolean XtIsSensitive();
     

extern Widget XtParent();
     









typedef struct _XtCallbackRec*    XtCallbackList;

typedef void (*XtCallbackProc)();
     
     
     

typedef struct _XtCallbackRec {
    XtCallbackProc  callback;
    caddr_t         closure;
} XtCallbackRec;

extern void XtAddCallback ();
     
     
     
     

extern void XtRemoveCallback ();
     
     
     
     

extern void XtAddCallbacks ();
     
     
     

extern void XtRemoveCallbacks ();
     
     
     

extern void XtRemoveAllCallbacks ();
     
     


extern void XtCallCallbacks ();
     
     
     

 


extern void DwtOverrideCallback();  
     
     
     


extern void XtOverrideCallback();  
     
     
     

typedef enum {
        XtCallbackNoList,
        XtCallbackHasNone,
        XtCallbackHasSome
} XtCallbackStatus;

extern XtCallbackStatus XtHasCallbacks();  
     
     



 






 


 



typedef struct {
    XtGeometryMask request_mode;
    Position x, y;
    Dimension width, height, border_width;
    Widget sibling;
    int stack_mode;     
} XtWidgetGeometry;

typedef enum  {
    XtGeometryYes,         
    XtGeometryNo,          
    XtGeometryAlmost,      
    XtGeometryDone         
} XtGeometryResult;

extern XtGeometryResult XtMakeGeometryRequest();
     
     
     
      

extern XtGeometryResult XtMakeResizeRequest ();
     
     
     

extern void XtTransformCoords();
     
     
     

extern XtGeometryResult XtQueryGeometry();
     
     
     


extern Widget XtCreatePopupShell();

     
     
     
     
     

typedef enum {XtGrabNone, XtGrabNonexclusive, XtGrabExclusive} XtGrabKind;

extern void XtPopup();
     
     

extern void XtCallbackNone();
     
     
     

extern void XtCallbackNonexclusive();
     
     
     

extern void XtCallbackExclusive();
     
     
     

extern void XtPopdown();
     

typedef struct {
    Widget  shell_widget;
    Widget  enable_widget;
} XtPopdownIDRec, *XtPopdownID;

extern void XtCallbackPopdown();
     
     
     


extern Widget XtCreateWidget ();
     
     
     
     
     

extern Widget XtCreateManagedWidget ();
     
     
     
     
     

extern Widget XtCreateApplicationShell ();
     
     
     
     

extern Widget XtAppCreateShell ();
     
     
     
     
     


 





extern void XtToolkitInitialize();

extern void XtDisplayInitialize();
     
     
     
     
     
       
     

extern Widget XtInitialize();
     
     
     
     
       
     

extern Display *XtOpenDisplay();         
    
    
    
    
    
    

extern XtAppContext XtCreateApplicationContext();

extern void XtDestroyApplicationContext();
     

extern XtAppContext XtWidgetToApplicationContext();
     

extern XrmDatabase XtDatabase();
     

extern void XtCloseDisplay();            
     


typedef struct {
    XrmQuark	xrm_name;	   
    XrmQuark	xrm_class;	   
    XrmQuark	xrm_type;	   
    Cardinal	xrm_size;	   
    long int	xrm_offset;	   
    XrmQuark	xrm_default_type;  
    caddr_t	xrm_default_addr;  
} XrmResource, *XrmResourceList;

extern void XtCopyFromParent();

extern void XtCopyDefaultDepth();

extern void XtCopyDefaultColormap();

extern void XtCopyAncestorSensitive();

extern void XtCopyScreen();

typedef struct _XtResource *XtResourceList;

extern void XrmCompileResourceList();  
     
     


extern void XtGetSubresources();
     
     
     
     
     
     
     
     

extern void XtSetValues();
     
     
     

extern void XtGetValues();
     
     
     

extern void XtSetSubvalues();
     
     
     
     
     

extern void XtGetSubvalues();
     
     
     
     
     

extern void XtGetResourceList();
     
     
     

typedef struct _XtResource {
    String     resource_name;    
    String     resource_class;   
    String     resource_type;    
    Cardinal    resource_size;   
    Cardinal    resource_offset; 
    String     default_type;     
    caddr_t     default_addr;    
} XtResource;





 






 





typedef void (*XtErrorMsgHandler)();
 





extern void XtAppSetErrorMsgHandler();
     
     


extern void XtSetErrorMsgHandler();
     


extern void XtAppSetWarningMsgHandler();
     
     


extern void XtSetWarningMsgHandler();
     


extern void XtAppErrorMsg();
     
 





extern void XtErrorMsg();
 





extern void XtAppWarningMsg();
     
 





extern void XtWarningMsg();
 




typedef void (*XtErrorHandler)();
 



extern void XtAppSetErrorHandler();
     
     


extern void XtSetErrorHandler();
     


extern void XtAppSetWarningHandler();
     
     


extern void XtSetWarningHandler();
     


extern void XtAppError();
     
 



extern void XtError();
 



extern void XtAppWarning();
     
 



extern void XtWarning();
 



extern XrmDatabase *XtAppGetErrorDatabase();
     


extern XrmDatabase *XtGetErrorDatabase();
 


extern void XtAppGetErrorDatabaseText();
     
 







extern void XtGetErrorDatabaseText();
 






 









 



















extern char *XtMalloc();  
     

extern char *XtCalloc();  
     

extern char *XtRealloc();  
     
     

extern void XtFree();  
         


 





typedef Boolean (*XtWorkProc)();
     
     

extern XtWorkProcId XtAddWorkProc();
     
     

extern XtWorkProcId XtAppAddWorkProc();
     
     
     

extern void  XtRemoveWorkProc();
     


 




extern GC XtGetGC();  
     
     
     

extern void XtDestroyGC ();  
     
     
 
 


extern void XtReleaseGC ();  
     
     



 

# 66 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2






typedef struct _vms_time {
     unsigned long low;
     unsigned long high;
}vms_time;


typedef unsigned long XtVersionType;






extern void _XtInherit();
     

typedef void (*XtProc)();
     

typedef void (*XtWidgetClassProc)();
     

typedef void (*XtWidgetProc)();
     

typedef Boolean (*XtAcceptFocusProc)();
     
       

typedef void (*XtArgsProc)();
     
     
     

typedef void (*XtInitProc)();
     
     

typedef Boolean (*XtSetValuesFunc)();   
     
     
     

typedef Boolean (*XtArgsFunc)();
     
     
     

typedef void (*XtAlmostProc)();
     
     
     
     

typedef void (*XtExposeProc)();
     
     
     

typedef void (*XtRealizeProc) ();
     
     
     

typedef void (*XtCreatePopupChildProc)();

typedef XtGeometryResult (*XtGeometryHandler)();
     
     
     

typedef void (*XtStringProc)();
     
     


# 1 "GNU_CC_INCLUDE:[000000.decw$include]ObjectP.h" 1
 



 













































 



 

typedef struct _ObjectPart {
    Widget          self;                
    WidgetClass     widget_class;        
    Widget          parent;              
    XrmName         xrm_name;            
    Boolean         being_destroyed;     
    XtCallbackList  destroy_callbacks;   
    caddr_t         constraints;         
} ObjectPart;

typedef struct _ObjectRec {
    ObjectPart  object;
} ObjectRec;

 



 
 



typedef struct _ObjectClassPart {

    WidgetClass     superclass;          
    String          class_name;          
    Cardinal        widget_size;         
    XtProc          class_initialize;    
    XtWidgetClassProc class_part_initialize;  
    Boolean         class_inited;        
    XtInitProc      initialize;          
    XtArgsProc      initialize_hook;     
    XtProc          obj1;		 
    XtProc          obj2;                
    Cardinal        obj3;                
    XtResourceList  resources;           
    Cardinal        num_resources;       
    XrmClass        xrm_class;           
    Boolean         obj4;                
    Boolean         obj5;                
    Boolean         obj6;                
    Boolean         obj7;                
    XtWidgetProc    destroy;             
    XtProc          obj8;                
    XtProc          obj9;                
    XtSetValuesFunc set_values;          
    XtArgsFunc      set_values_hook;     
    XtProc          obj10;               
    XtArgsProc      get_values_hook;     
    XtProc          obj11;               
    XtVersionType   version;             
    struct _XtOffsetRec *callback_private; 
    String          obj12;               
    XtProc          obj13;               
    XtProc          obj14;               
    caddr_t         extension;           
}ObjectClassPart;

typedef struct _ObjectClassRec {
    ObjectClassPart object_class;
} ObjectClassRec;


extern  ObjectClassRec objectClassRec;

# 148 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]RectObjP.h" 1
 



 














































 



 

typedef struct _RectObjPart {
    Position        x, y;                
    Dimension       width, height;       
    Dimension       border_width;        
    Boolean         managed;             
    Boolean         sensitive;           
    Boolean         ancestor_sensitive;  
}RectObjPart;

typedef struct _RectObjRec {
    ObjectPart object;
    RectObjPart rectangle;
} RectObjRec;



 



 
 



typedef struct _RectObjClassPart {

    WidgetClass     superclass;          
    String          class_name;          
    Cardinal        widget_size;         
    XtProc          class_initialize;    
    XtWidgetClassProc class_part_initialize;  
    Boolean         class_inited;        
    XtInitProc      initialize;          
    XtArgsProc      initialize_hook;     
    XtProc          rect1;		 
    XtProc          rect2;                
    Cardinal        rect3;                
    XtResourceList  resources;           
    Cardinal        num_resources;       
    XrmClass        xrm_class;           
    Boolean         rect4;                
    Boolean         rect5;                
    Boolean         rect6;                
    Boolean         rect7;                
    XtWidgetProc    destroy;             
    XtWidgetProc    resize;              
    XtExposeProc    expose;              
    XtSetValuesFunc set_values;          
    XtArgsFunc      set_values_hook;     
    XtAlmostProc    set_values_almost;   
    XtArgsProc      get_values_hook;     
    XtProc          rect9;               
    XtVersionType   version;             
    struct _XtOffsetRec *callback_private; 
    String          rect10;               
    XtGeometryHandler query_geometry;    
    XtProc          rect11;               
    caddr_t         extension;           
}RectObjClassPart;

typedef struct _RectObjClassRec {
    RectObjClassPart rect_class;
} RectObjClassRec;

extern  RectObjClassRec rectObjClassRec;

# 149 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]WindowObjP.h" 1
 



 













































typedef struct _StateRec *StatePtr;

typedef struct _XtTMRec {
    XtTranslations  translations;	 
    XtBoundActions  proc_table;		 
    StatePtr        current_state;       
    unsigned long   lastEventTime;
} XtTMRec, *XtTM;
extern  int _XtInheritTranslations;











 



 

typedef struct _WindowObjPart {
    XtEventTable    event_table;         
    XtTMRec         tm;                  
    XtTranslations  accelerators;        
    Pixel	    border_pixel;	 
    Pixmap          border_pixmap;	 
    WidgetList      popup_list;          
    Cardinal        num_popups;          
    String          name;                
    Screen          *screen;             
    Colormap        colormap;            
    Window          window;              
    Cardinal        depth;               
    Pixel           background_pixel;    
    Pixmap          background_pixmap;   
    Boolean         visible;             
    Boolean         mapped_when_managed; 
} WindowObjPart;

typedef struct _WindowObjRec {
    ObjectPart  object;
    RectObjPart rect;
    WindowObjPart win_obj;
}WindowObjRec;


 



 
 



typedef struct _WindowObjClassPart {

    WidgetClass     superclass;          
    String          class_name;          
    Cardinal        widget_size;         
    XtProc          class_initialize;    
    XtWidgetClassProc class_part_initialize;  
    Boolean         class_inited;        
    XtInitProc      initialize;          
    XtArgsProc      initialize_hook;     
    XtRealizeProc   realize;             
    XtActionList    actions;             
    Cardinal        num_actions;         
    XtResourceList  resources;           
    Cardinal        num_resources;       
    XrmClass        xrm_class;           
    Boolean         compress_motion;     
    Boolean         compress_exposure;   
    Boolean         compress_enterleave; 
    Boolean         visible_interest;    
    XtWidgetProc    destroy;             
    XtWidgetProc    resize;              
    XtExposeProc    expose;              
    XtSetValuesFunc set_values;          
    XtArgsFunc      set_values_hook;     
    XtAlmostProc    set_values_almost;   
    XtArgsProc      get_values_hook;     
    XtAcceptFocusProc accept_focus;       
    XtVersionType   version;             
    struct _XtOffsetRec *callback_private; 
    String          tm_table;            
    XtGeometryHandler query_geometry;    
    XtStringProc    display_accelerator; 
    caddr_t         extension;           
}WindowObjClassPart;

typedef struct _WindowObjClassRec {
    WindowObjClassPart window_class;
} WindowObjClassRec;

extern  WindowObjClassRec windowObjClassRec;

# 150 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]CoreP.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 



 














































 




 



typedef struct _CorePart {
    Widget	    self;		 
    WidgetClass	    widget_class;	 
    Widget	    parent;		 
    XrmName         xrm_name;		 
    Boolean         being_destroyed;	 
    XtCallbackList  destroy_callbacks;	 
    caddr_t         constraints;         
 
    Position        x, y;		 
    Dimension       width, height;	 
    Dimension       border_width;	 
    Boolean         managed;             
    Boolean	    sensitive;		 
    Boolean         ancestor_sensitive;	 
 
    XtEventTable    event_table;	 
    XtTMRec	    tm;                  
    XtTranslations  accelerators;        
    Pixel	    border_pixel;	 
    Pixmap          border_pixmap;	 
    WidgetList      popup_list;          
    Cardinal        num_popups;          
    String          name;		 
    Screen	    *screen;		 
    Colormap        colormap;            
    Window	    window;		 
    Cardinal        depth;		 
    Pixel	    background_pixel;	 
    Pixmap          background_pixmap;	 
    Boolean         visible;		 
    Boolean	    mapped_when_managed; 
 
} CorePart;

typedef struct _WidgetRec {
    CorePart    core;
 } WidgetRec;



 














typedef struct _CoreClassPart {
    WidgetClass     superclass;		 
    String          class_name;		 
    Cardinal        widget_size;	 
    XtProc	    class_initialize;    
    XtWidgetClassProc class_part_initialize;  
    Boolean         class_inited;        
    XtInitProc      initialize;		 
    XtArgsProc      initialize_hook;     
    XtRealizeProc   realize;		 
    XtActionList    actions;		 
    Cardinal	    num_actions;	 
    XtResourceList  resources;		 
    Cardinal        num_resources;       
    XrmClass        xrm_class;		 
    Boolean         compress_motion;     
    Boolean         compress_exposure;   
    Boolean         compress_enterleave; 
    Boolean         visible_interest;    
    XtWidgetProc    destroy;		 
    XtWidgetProc    resize;		 
    XtExposeProc    expose;		 
    XtSetValuesFunc set_values;		 
    XtArgsFunc      set_values_hook;     
    XtAlmostProc    set_values_almost;   
    XtArgsProc      get_values_hook;     
    XtAcceptFocusProc accept_focus;       
    XtVersionType   version;	         
    struct _XtOffsetRec *callback_private; 
    String          tm_table;            
    XtGeometryHandler query_geometry;	 
    XtStringProc    display_accelerator; 
    caddr_t	    extension;		 
 } CoreClassPart;

typedef struct _WidgetClassRec {
    CoreClassPart core_class;
} WidgetClassRec;

extern  WidgetClassRec widgetClassRec;



 
# 151 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]CompositeP.h" 1
 
 
 
 
 
 
 
 
 
 
 



 













































 





typedef Cardinal (*XtOrderProc)();
     

typedef struct _CompositePart {
    WidgetList  children;	      
    Cardinal    num_children;	      
    Cardinal    num_slots;            
    XtOrderProc insert_position;      
} CompositePart,*CompositePtr;

typedef struct _CompositeRec {
    CorePart      core;
    CompositePart composite;
} CompositeRec;

 





typedef struct _CompositeClassPart {
    XtGeometryHandler geometry_manager;	   
    XtWidgetProc      change_managed;	   
    XtWidgetProc      insert_child;	   
    XtWidgetProc      delete_child;	   
    caddr_t	    extension;		 
} CompositeClassPart,*CompositePartPtr;

typedef struct _CompositeClassRec {
     CoreClassPart      core_class;
     CompositeClassPart composite_class;
} CompositeClassRec;

extern  CompositeClassRec compositeClassRec;







 
# 152 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]CompObjP.h" 1
 



 













































typedef struct _CompositeObjRec {
   ObjectPart object;
   RectObjPart rectangle;
   CompositePart composite;
} CompositeObjRec;


typedef struct _CompositeObjectClassRec {
    ObjectClassPart object_class;
    CompositeClassPart composite_class;
}CompositeObjectClassRec;

extern  CompositeObjectClassRec compositeObjectClassRec;

# 153 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]ConstrainP.h" 1
 
 
 
 
 
 
 
 



 














































typedef struct _ConstraintPart {
    caddr_t     mumble;		 
} ConstraintPart;

typedef struct _ConstraintRec {
    CorePart	    core;
    CompositePart   composite;
    ConstraintPart  constraint;
} ConstraintRec, *ConstraintWidget;

typedef struct _ConstraintClassPart {
    XtResourceList resources;	       
    Cardinal   num_resources;          
    Cardinal   constraint_size;        
    XtInitProc initialize;             
    XtWidgetProc destroy;              
    XtSetValuesFunc set_values;        
    caddr_t	    extension;		 
} ConstraintClassPart;

typedef struct _ConstraintClassRec {
    CoreClassPart       core_class;
    CompositeClassPart  composite_class;
    ConstraintClassPart constraint_class;
} ConstraintClassRec;

extern  ConstraintClassRec constraintClassRec;


 
# 154 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h" 2

 

# 170 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h"


















# 201 "GNU_CC_INCLUDE:[000000.decw$include]IntrinsicP.h"







































extern void XtCreateWindow ();
     
     
     
     
     

extern void XtResizeWidget();  
     
     

extern void XtMoveWidget();  
     
     

extern void XtConfigureWidget();  
     
     
     


 
# 59 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]CoreP.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 



 










































# 171 "GNU_CC_INCLUDE:[000000.decw$include]CoreP.h"

 
# 60 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]CompositeP.h" 1
 
 
 
 
 
 
 
 
 
 
 



 










































# 108 "GNU_CC_INCLUDE:[000000.decw$include]CompositeP.h"

 
# 61 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]ConstrainP.h" 1
 
 
 
 
 
 
 
 



 










































# 87 "GNU_CC_INCLUDE:[000000.decw$include]ConstrainP.h"

 
# 62 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]ShellP.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 



 









































 











 





 





 

typedef struct {
    caddr_t         extension;           
} ShellClassPart;

typedef struct _ShellClassRec {
  	CoreClassPart      core_class;
	CompositeClassPart composite_class;
	ShellClassPart  shell_class;
} ShellClassRec;

extern  ShellClassRec shellClassRec;

 

typedef struct {
	char       *geometry;
	XtCreatePopupChildProc	create_popup_child_proc;
	XtGrabKind	grab_kind;
	Boolean	    spring_loaded;
	Boolean	    popped_up;
	Boolean	    allow_shell_resize;
	Boolean	    client_specified;
	Boolean	    save_under;
	Boolean	    override_redirect;

	XtCallbackList popup_callback;
	XtCallbackList popdown_callback;
} ShellPart;

typedef  struct {
	CorePart 	core;
	CompositePart 	composite;
	ShellPart 	shell;
} ShellRec, *ShellWidget;

 





 

typedef struct {
    caddr_t         extension;           
} OverrideShellClassPart;

typedef struct _OverrideShellClassRec {
  	CoreClassPart      core_class;
	CompositeClassPart composite_class;
	ShellClassPart  shell_class;
	OverrideShellClassPart  override_shell_class;
} OverrideShellClassRec;

extern  OverrideShellClassRec overrideShellClassRec;

 

typedef struct {int frabjous;} OverrideShellPart;

typedef  struct {
	CorePart 	core;
	CompositePart 	composite;
	ShellPart 	shell;
	OverrideShellPart override;
} OverrideShellRec, *OverrideShellWidget;

 





 

typedef struct {
    caddr_t         extension;           
} WMShellClassPart;

typedef struct _WMShellClassRec {
  	CoreClassPart      core_class;
	CompositeClassPart composite_class;
	ShellClassPart  shell_class;
	WMShellClassPart wm_shell_class;
} WMShellClassRec;

extern  WMShellClassRec wmShellClassRec;

 

typedef struct {
	char	   *title;
	int 	    wm_timeout;
	Boolean	    wait_for_wm;
	Boolean	    transient;
	Atom	    wm_configure_denied,  wm_moved;
	XOldSizeHints  size_hints;
	XWMHints    wm_hints;
} WMShellPart;

typedef  struct {
	CorePart 	core;
	CompositePart 	composite;
	ShellPart 	shell;
	WMShellPart	wm;
} WMShellRec, *WMShellWidget;


# 1 "GNU_CC_INCLUDE:[000000.decw$include]VendorP.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 



 









































 








 









# 1 "GNU_CC_INCLUDE:[000000.decw$include]DECWmHints.h" 1
 
 
 
 
 
 
 
 
 
 
 


 












































extern void WmSetDecorationGeometry();
extern void WmSetDECWmHints();
extern void WmSetIconBoxName();
extern int  WmGetDecorationGeoemtery();
extern int  WmGetDECWmHints();
extern int  WmGetIconBoxName();

typedef struct {
	Font title_font;
	Font icon_font;
	int border_width;
	int title_height;
	int non_title_width;
	int icon_name_width;
	int iconify_width;
	int iconify_height;
} WmDecorationGeometryRec, *WmDecorationGeometry;











typedef struct {
	unsigned long value_mask;
	Pixmap iconify_pixmap;
	int icon_box_x;
	int icon_box_y;
	int  tiled;
	int  sticky;
	int  no_iconify_button;
	int  no_lower_button;
	int  no_resize_button;
} DECWmHintsRec, *DECWmHints;




typedef struct {
	int state;  
} WmIconStateRec, *WmIconState;



# 80 "GNU_CC_INCLUDE:[000000.decw$include]VendorP.h" 2




# 1 "GNU_CC_INCLUDE:[000000]types.h" 1
 







# 84 "GNU_CC_INCLUDE:[000000.decw$include]VendorP.h" 2

# 1 "GNU_CC_INCLUDE:[000000]time.h" 1
 



struct tm {
	int	tm_sec;
	int	tm_min;
	int	tm_hour;
	int	tm_mday;
	int	tm_mon;
	int	tm_year;
	int	tm_wday;
	int	tm_yday;
	int	tm_isdst;
};        	

extern struct tm *localtime();
# 85 "GNU_CC_INCLUDE:[000000.decw$include]VendorP.h" 2





 

typedef struct {
    caddr_t         extension;           
} VendorShellClassPart;

typedef struct _VendorShellClassRec {
  	CoreClassPart      core_class;
	CompositeClassPart composite_class;
	ShellClassPart  shell_class;
	WMShellClassPart   wm_shell_class;
	VendorShellClassPart vendor_shell_class;
} VendorShellClassRec;

extern  VendorShellClassRec vendorShellClassRec;

 

typedef struct {

	DECWmHintsRec	dechints;
	WmDecorationGeometryRec decoration;
	WmIconStateRec	icon_state;
	String		icon_box;
	Atom		dec_wm_hints, dec_wm_decoration_geometry,
			dec_wm_icon_box_name, dec_wm_icon_state,
			dec_wm_take_focus,
			dec_wm_char, dec_wm_word;
	 

	int		save_size_flags, save_hint_flags, save_dec_flags;
	 
	Boolean		copyright;
	String		copyright_notice, copyright_message;
	XFontStruct	*copyright_font;
	Pixel		copyright_foreground, copyright_background,
				copyright_border_color;
	int		copyright_border_width;	
	Window		copyright_window;
	int		copyright_min_time, copyright_max_time;

        vms_time start_time;



	 



} VendorShellPart;

typedef  struct {
	CorePart 	core;
	CompositePart 	composite;
	ShellPart 	shell;
	WMShellPart	wm;
	VendorShellPart	vendor;
} VendorShellRec, *VendorShellWidget;


# 194 "GNU_CC_INCLUDE:[000000.decw$include]ShellP.h" 2





 





 

typedef struct {
    caddr_t         extension;           
} TransientShellClassPart;

typedef struct _TransientShellClassRec {
  	CoreClassPart      core_class;
	CompositeClassPart composite_class;
	ShellClassPart  shell_class;
	WMShellClassPart   wm_shell_class;
	VendorShellClassPart vendor_shell_class;
	TransientShellClassPart transient_shell_class;
} TransientShellClassRec;

extern  TransientShellClassRec transientShellClassRec;

 

typedef struct {int brillig;} TransientShellPart;

typedef  struct {
	CorePart 	core;
	CompositePart 	composite;
	ShellPart 	shell;
	WMShellPart	wm;
	VendorShellPart	vendor;
	TransientShellPart transient;	
} TransientShellRec, *TransientShellWidget;

 





 

typedef struct {
    caddr_t         extension;           
} TopLevelShellClassPart;

typedef struct _TopLevelShellClassRec {
  	CoreClassPart      core_class;
	CompositeClassPart composite_class;
	ShellClassPart  shell_class;
	WMShellClassPart   wm_shell_class;
	VendorShellClassPart vendor_shell_class;
	TopLevelShellClassPart top_level_shell_class;
} TopLevelShellClassRec;

extern  TopLevelShellClassRec topLevelShellClassRec;

 

typedef struct {
	char	   *icon_name;
	Boolean	    iconic;
} TopLevelShellPart;

typedef  struct {
	CorePart 	core;
	CompositePart 	composite;
	ShellPart 	shell;
	WMShellPart	wm;
	VendorShellPart	vendor;
	TopLevelShellPart topLevel;
} TopLevelShellRec, *TopLevelShellWidget;

 





 

typedef struct {
    caddr_t         extension;           
} ApplicationShellClassPart;

typedef struct _ApplicationShellClassRec {
  	CoreClassPart      core_class;
	CompositeClassPart composite_class;
	ShellClassPart  shell_class;
	WMShellClassPart   wm_shell_class;
	VendorShellClassPart vendor_shell_class;
	TopLevelShellClassPart top_level_shell_class;
	ApplicationShellClassPart application_shell_class;
} ApplicationShellClassRec;

extern  ApplicationShellClassRec applicationShellClassRec;

 

typedef struct {
	char *class;
	XrmClass xrm_class;
	int argc;
	char **argv;
} ApplicationShellPart;

typedef  struct {
	CorePart 	core;
	CompositePart 	composite;
	ShellPart 	shell;
	WMShellPart	wm;
	VendorShellPart	vendor;
	TopLevelShellPart topLevel;
	ApplicationShellPart application;
} ApplicationShellRec, *ApplicationShellWidget;


# 63 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]VendorP.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 



 









































 








 





# 149 "GNU_CC_INCLUDE:[000000.decw$include]VendorP.h"

# 64 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2














typedef struct _DwtTextSourceRec *DwtTextSource;


# 1 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h" 1

 




















































# 1 "GNU_CC_INCLUDE:[000000.decw$include]Xlib.h" 1
 









































# 1205 "GNU_CC_INCLUDE:[000000.decw$include]Xlib.h"

# 55 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 



 









































# 863 "GNU_CC_INCLUDE:[000000.decw$include]Intrinsic.h"

 

# 56 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]StringDefs.h" 1
 
 
 
 
 
 
 
 
 
 



 












































 













































































  





























































 

































 








 




 





 




 




# 57 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Shell.h" 1
 
 
 
 
 
 
 
 
 
 
 
 
 


 












































 




 












 















 













































 

typedef struct _ShellClassRec *ShellWidgetClass;
typedef struct _OverrideShellClassRec *OverrideShellWidgetClass;
typedef struct _WMShellClassRec *WMShellWidgetClass;
typedef struct _TransientShellClassRec *TransientShellWidgetClass;
typedef struct _TopLevelShellClassRec *TopLevelShellWidgetClass;
typedef struct _ApplicationShellClassRec *ApplicationShellWidgetClass;


extern  WidgetClass shellWidgetClass;
extern  WidgetClass overrideShellWidgetClass;
extern  WidgetClass wmShellWidgetClass;
extern  WidgetClass transientShellWidgetClass;
extern  WidgetClass topLevelShellWidgetClass;
extern  WidgetClass applicationShellWidgetClass;



 
# 58 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h" 2








 
 
 








 




 



 









 








 

















 





 





 






 






 








 






 






 





 



 





 



 


























 

































 













































































































 






 















 












































 

























 






















 






 









 
















 















 







 



 


 



























 




























 











 


















 












 










 





























 

























 









 



















































 















 









 


























 











 












 




































































 






 











































 



typedef void (*VoidProc) ();
typedef char *DwtCompString;
typedef long DwtTextPosition;






 



typedef struct 
{
    VoidProc	proc;
    int		tag;
}
    DwtCallback, *DwtCallbackPtr;


 

typedef struct {
    int DataId;
    int PrivateId;
} DwtClipboardPendingRec, *DwtClipboardPendingList;
 
 



typedef struct {
 
  char *cs;
  long offset;
 
} DwtCompStringContext;
 


 


typedef struct _Font_Item {

        XFontStruct  *font;
        Opaque char_set_id;

} DwtFontRec, *DwtFontList;

 
 


typedef struct _rendmask {
  long mask[4];
}  *DwtRendMask;




 




typedef struct				     
{                                            
    int     reason;
    XEvent  *event;
} DwtAnyCallbackStruct;


typedef struct				     
{
    int     reason;
    XEvent  *event;
    Widget  s_widget;
    char    *s_tag;
    char    *s_callbackstruct;
} DwtMenuCallbackStruct;


typedef struct				     
{    
    int reason;
    XEvent  *event;
    int value;
    int pixel;
} DwtScrollBarCallbackStruct;


typedef struct				     
{
    int reason;
    XEvent  *event;
    int value;
} DwtTogglebuttonCallbackStruct;

typedef struct
{
    int          reason;
    XExposeEvent *event;
    Window	 w;
} DwtWindowCallbackStruct;                  

typedef struct				     
{
    int reason;
    XEvent  *event;
    int value;
} DwtScaleCallbackStruct;

typedef struct				     
{
    int  	   reason;
    XEvent  *event;
    DwtCompString item;
    int  	   item_length;
    int  	   item_number;
} DwtListBoxCallbackStruct;

typedef struct {
    int     reason;
    XEvent  *event;
    Widget  s_widget;
    char    *s_tag;
    char    *s_callbackstruct;
} DwtRadioBoxCallbackStruct;

 typedef struct                                    
{
    int 	   reason;
    XEvent  *event;
    DwtCompString value;
    int   	   value_len;
} DwtSelectionCallbackStruct;

 typedef struct                                    
{
    int 	   reason;
    XEvent  *event;
    DwtCompString value;
    int  	   value_len;
    DwtCompString dirmask;
    int  	   dirmask_len;
} DwtFileSelectionCallbackStruct;

typedef struct                                    
{
    int reason;
    XEvent  *event;
    int length;
    char * value;
} DwtCommandWindowCallbackStruct;


typedef struct				     
{                                           
    int     reason;
    XEvent  *event;
    char    *charset;
    unsigned int  charset_len;
} DwtCSTextCallbackStruct;


typedef struct				     
{                                           
    int     reason;
    XEvent  *event;
    unsigned short newred;
    unsigned short newgrn;
    unsigned short newblu;
    unsigned short origred;
    unsigned short origgrn;
    unsigned short origblu;
} DwtColorMixCallbackStruct;


typedef enum _DwtAttachmentType {
    DwtAttachNone,		 
    DwtAttachAdb,		 
    DwtAttachWidget,		 
    DwtAttachPosition,		 
    DwtAttachSelf,		 
    DwtAttachOppWidget,		 
    DwtAttachOppAdb,		 
} DwtAttachmentType;




 



 
 
 

 

extern int DwtBeginCopyToClipboard();
extern int DwtCopyToClipboard();
extern int DwtEndCopyToClipboard();
extern void DwtCancelCopyToClipboard();
extern int DwtReCopyToClipboard();
extern int DwtUndoCopyToClipboard();
extern int DwtClipboardLock();
extern int DwtClipboardUnlock();
extern int DwtCopyFromClipboard();
extern int DwtInquireNextPasteCount();
extern int DwtInquireNextPasteFormat();
extern int DwtInquireNextPasteLength();
extern int DwtListPendingItems();

 
 
 

extern Widget DwtLabel(); 
extern Widget DwtLabelCreate(); 

 
 
 

extern Widget DwtLabelGadgetCreate(); 

 
 
 

extern Widget DwtPushButton(); 
extern Widget DwtPushButtonCreate(); 

 
 
 

extern Widget DwtPushButtonGadgetCreate(); 

 
 
 

extern Widget DwtToggleButton(); 
extern Widget DwtToggleButtonCreate(); 
extern unsigned int DwtToggleButtonGetState(); 
extern void DwtToggleButtonSetState(); 

 
 
 

extern Widget DwtToggleButtonGadgetCreate(); 

 
 
 

extern Widget DwtPullEntryGadgetCreate();

 
 
 

extern Widget DwtRadioBox(); 
extern Widget DwtRadioBoxCreate(); 

 
 
 

extern Widget DwtDialogBox(); 
extern Widget DwtDialogBoxCreate(); 

 
 
 

extern Widget DwtDialogBoxPopupCreate(); 

 
 
 

extern Widget DwtMenu(); 
extern Widget DwtMenuCreate(); 

 
 
 

extern Widget DwtMenuBar(); 
extern Widget DwtMenuBarCreate(); 

 
 
 

extern Widget DwtMenuPopupCreate(); 

 
 
 

extern Widget DwtMenuPulldownCreate(); 

 
 
 

extern Widget DwtPullDownMenuEntry(); 
extern Widget DwtPullDownMenuEntryCreate(); 

 
 
 

extern Widget DwtScrollBar(); 
extern Widget DwtScrollBarCreate(); 
extern void DwtScrollBarGetSlider(); 
extern void DwtScrollBarSetSlider(); 

 
 
 

extern Widget DwtListBox(); 
extern Widget DwtListBoxCreate(); 
extern void DwtListBoxAddItem(); 
extern void DwtListBoxSelectItem(); 
extern void DwtListBoxSelectPos(); 
extern void DwtListBoxDeselectItem(); 
extern void DwtListBoxDeselectPos(); 
extern void DwtListBoxDeselectAllItems(); 
extern void DwtListBoxDeleteItem(); 
extern void DwtListBoxDeletePos(); 
extern void DwtListBoxSetItem(); 
extern void DwtListBoxSetPos(); 
extern void DwtListBoxSetHorizPos(); 
extern int  DwtListBoxItemExists(); 

 
 
 

extern Widget DwtMainWindow(); 
extern Widget DwtMainWindowCreate(); 
extern void DwtMainSetAreas(); 

 
 
 

extern Widget DwtCommandWindow(); 
extern Widget DwtCommandWindowCreate(); 
extern void DwtCommandSet(); 
extern void DwtCommandAppend(); 
extern void DwtCommandErrorMessage(); 

 
 
 

extern Widget DwtMessageBox(); 
extern Widget DwtMessageBoxCreate(); 

 
 
 

extern Widget DwtSelection(); 
extern Widget DwtSelectionCreate(); 

 
 
 

extern Widget DwtFileSelection(); 
extern void DwtFileSelectionDoSearch();
extern Widget DwtFileSelectionCreate(); 

 
 
 

extern Widget DwtCautionBox(); 
extern Widget DwtCautionBoxCreate(); 

 
 
 

extern Widget DwtScale(); 
extern Widget DwtScaleCreate(); 
extern int DwtGetSlider(); 
extern void DwtSetSlider(); 

 
 
 

extern Widget DwtWorkBox(); 
extern Widget DwtWorkBoxCreate(); 

 
 
 

extern Widget DwtSeparator(); 
extern Widget DwtSeparatorCreate(); 

 
 
 

extern Widget DwtSeparatorGadgetCreate(); 

 
 
 

extern Widget DwtOptionMenu(); 
extern Widget DwtOptionMenuCreate(); 

 
 
 

extern Widget DwtSText(); 
extern Widget DwtSTextCreate(); 
extern char *DwtSTextGetString(); 
extern void DwtSTextSetString(); 
extern void DwtSTextReplace(); 
extern unsigned int DwtSTextGetEditable(); 
extern void DwtSTextSetEditable(); 
extern int DwtSTextGetMaxLength(); 
extern void DwtSTextSetMaxLength(); 
extern char *DwtSTextGetSelection(); 
extern void DwtSTextSetSelection(); 

 
 
 

extern Widget DwtTextCreate();  
extern DwtTextPosition DwtTextGetTopPosition();
extern void DwtTextSetTopPosition(); 
extern DwtTextPosition DwtTextGetInsertionPosition(); 
extern void DwtTextSetInsertionPosition(); 
extern DwtTextSource DwtTextGetSource();
extern void DwtTextSetSource(); 
extern void DwtTextShowPosition(); 
extern void DwtTextScroll();	
extern void DwtTextDisableRedisplay(); 
extern void DwtTextEnableRedisplay(); 


 
 
 


extern Widget DwtCSText();
extern Widget DwtCSTextCreate();
extern DwtCompString DwtCSTextGetString();
extern void DwtCSTextSetString();
extern void DwtCSTextReplace();
extern unsigned int DwtCSTextGetEditable();
extern void DwtCSTextSetEditable();
extern int DwtCSTextGetMaxLength();
extern void DwtCSTextSetMaxLength();
extern DwtCompString DwtCSTextGetSelection();
extern void DwtCSTextSetSelection();

 
 
 

extern Widget DwtWindow();
extern Widget DwtWindowCreate();

 
 
 

extern Widget DwtScrollWindow();
extern Widget DwtScrollWindowCreate();
extern void DwtScrollWindowSetAreas();

 
 
 

extern Widget DwtHelp();
extern Widget DwtHelpCreate();

 
 
 
extern DwtCompString  DwtCSString();
extern DwtCompString  DwtString();
extern DwtCompString  DwtLatin1String();
extern int  	      DwtCStrlen();
extern DwtCompString  DwtCStrcat();
extern DwtCompString  DwtCStrncat();
extern DwtCompString  DwtCStrcpy();
extern DwtCompString  DwtCStrncpy();
extern int	      DwtCSbytecmp();
extern int	      DwtCSempty();
extern int	      DwtInitGetSegment();
extern int	      DwtGetNextSegment();
extern DwtFontList    DwtCreateFontList();
extern DwtFontList    DwtAddFontList();

 
 
 
extern Widget DwtAttachedDB();
extern Widget DwtAttachedDBCreate();
extern Widget DwtAttachedDBPopupCreate();

 
 
 
extern void DwtPropAttributes();

 
 
 
extern Widget DwtColorMixCreate();
extern void   DwtColorMixSetNewColor();
extern void   DwtColorMixGetNewColor();


 



# 1 "GNU_CC_INCLUDE:[000000.decw$include]DRMPublic.h" 1
 























 








 



































 






 






 





 





 






 






 





 






 



 






 













					 





















 






 



 


typedef	short int	DRMCode ;	 
typedef	char		DRMSCode ;	 
typedef	short int	DRMOffset ;	 
typedef	short int	DRMType ;	 
typedef	short int	DRMSize ;	 
typedef	short int	DRMCount ;	 
typedef	unsigned char	DRMFlag ;	 
typedef	long int	DRMResource_id ;	 
typedef	short int	DRMGroup ;	 



 









typedef struct {
	unsigned	validation ;	 

	char		*data_buffer ;	 
	DRMSize		buffer_size ;	 
	DRMSize		resource_size ;	 
	DRMGroup	group ;		 
	DRMType		type ;		 
	DRMCode		access ;	 
	DRMCode		lock ;		 
	char		*((*alloc_func) ()) ;	 
	void		(*free_func) () ;	 
} DRMResourceContext, *DRMResourceContextPtr ;


 





 











 









 





 







 




 












 















 


typedef	short int	IDBRecordNumber ;


 



typedef	short int	IDBResourceIndex ;
typedef union {
	unsigned		external_id ;	 
	struct {
	  IDBResourceIndex	map_index ;	 
	  IDBResourceIndex	res_index ;	 
	}			internal_id ;	 
} IDBridDesc ;

 


typedef	unsigned	IDBResource ;		 



 








typedef struct {
	unsigned	validation ;		 

	int		get_count ;		 
	int		put_count ;		 
	DRMCode		access ;		 

	unsigned int	lowlevel_id ;		 

	IDBRecordNumber	index_root ;		 
	DRMCount	num_indexed ;		 
	DRMCount	num_RID ;		 
	IDBridDesc	next_RID ;		 
	IDBRecordNumber	last_record ;		 
	IDBRecordNumber	last_data_record ;	 

	DRMCount	RID_maps_count ;	 

	IDBRecordNumber	*RID_maps ;		 

	DRMCount	group_counts[	5		+1	] ;
						 

	DRMCount	rt_counts[	6 ] ;
						 

	unsigned long	timer ;			 
	char		db_version[	(	9		 + 1) ] ;
						 
	char		creator[	(	29		 + 1) ] ;  
	char		creator_version[	(	9		 + 1) ] ;
						 
	char		creation_date[	(		29			 + 1) ] ;
						 
	char		module[	(	29		 + 1) ] ;	 
	char		module_version[	(	9		 + 1) ] ;
						 
	int		user1 ;			 
	int		user2 ;			 
} IDBOpenFile, *IDBFile ;



 




typedef struct	{
 


	Cardinal		version;  
 


	char			*default_fname;	 
 



	union {
	    unsigned long	related_nam;  
	    Boolean		clobber_flg;  
	} nam_flg;

} IDBOSOpenParam, *IDBOSOpenParamPtr ;



 










typedef struct {
	unsigned	validation ;		 
	DRMCount	num_file ;		 
	IDBFile		*file_list ;		 
	DRMCount	grp_num[	5		+1	] ;	 

	IDBFile		*grp_ids[	5		+1	] ;	 

} DRMHierarchyDesc, *DRMHierarchy ;


 







 


typedef struct {
	String		name ;		 
	caddr_t		value ;		 
} DRMRegisterArg, *DRMRegisterArglist ;



 














typedef union {
	  caddr_t	pointer ;	 
	  struct {
	    DRMType	rep_type ;	 
	    DRMOffset	offset ;	 
	} text_item ;			 
} RGMTextEntry, *RGMTextEntryPtr ;


 





typedef struct {
	unsigned	validation ;	 
	DRMCount	count ;		 
	RGMTextEntry	item[1] ;	 


} RGMTextVector, *RGMTextVectorPtr ;


 





typedef struct {
	unsigned	validation ;	 
	DRMCount	count ;		 
	int		item[1] ;	 
					 
					 
} RGMIntegerVector, *RGMIntegerVectorPtr ;


 


# 1 "GNU_CC_INCLUDE:[000000.decw$include]DRMDecls.h" 1
 























 
 
 
extern void XmInitializeDRM () ;
extern Cardinal XmOpenHierarchy () ;
extern Cardinal XmCloseHierarchy () ;
extern Cardinal XmRegisterClass () ;
extern Cardinal XmRegisterDRMCallbacks () ;
extern Cardinal XmRegisterDRMNames () ;
extern Cardinal XmFetchInterfaceModule () ;
extern Cardinal XmFetchWidget () ;
extern Cardinal XmFetchWidgetOverride () ;
extern Cardinal XmFetchSetValues () ;
extern Cardinal XmFetchLiteral () ;
extern Cardinal XmFetchIconLiteral () ;
extern Cardinal XmFetchColorLiteral () ;

 
 
 
extern Cardinal XmDrmGetResourceContext () ;
extern Cardinal XmDrmResizeResourceContext () ;
extern Cardinal XmDrmFreeResourceContext () ;

 
 
 
extern void DwtInitializeDRM () ;
extern Cardinal DwtOpenHierarchy () ;
extern Cardinal DwtCloseHierarchy () ;
extern Cardinal DwtRegisterClass () ;
extern Cardinal DwtRegisterDRMCallbacks () ;
extern Cardinal DwtRegisterDRMNames () ;
extern Cardinal DwtFetchInterfaceModule () ;
extern Cardinal DwtFetchWidget () ;
extern Cardinal DwtFetchWidgetOverride () ;
extern Cardinal DwtFetchSetValues () ;
extern Cardinal DwtDrm__OpenHierarchy () ;

 
 
 
extern Cardinal DwtFetchLiteral () ;
extern Cardinal DwtFetchIconLiteral () ;
extern Cardinal DwtFetchColorLiteral () ;
extern Cardinal DwtDrmHGetIndexedLiteral () ;
extern Cardinal DwtDrmGetIndexedLiteral () ;

 
 
 
extern Cardinal DwtDrmGetResourceContext () ;
extern Cardinal DwtDrmResizeResourceContext () ;
extern Cardinal DwtDrmFreeResourceContext () ;

 













 










# 499 "GNU_CC_INCLUDE:[000000.decw$include]DRMPublic.h" 2

# 1519 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h" 2






 



 










































typedef struct _DwtPartResource {
    String     resource_name;	 
    String     resource_class;	 
    String     resource_type;	 
    Cardinal   resource_size;	 

    short      resource_part;	 
    short      resource_offset;	 



    String     default_type;	 
    caddr_t    default_addr;   	 
} DwtPartResource;

typedef long DwtOffset;
typedef DwtOffset *DwtOffsetPtr;




# 1601 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h"







void DwtResolvePartOffsets();
	 
	 

# 1626 "GNU_CC_INCLUDE:[000000.decw$include]DwtAppl.h"



# 81 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h" 2






 

static void Initialize();
static void Realize();
static void Resize();
static void Redisplay();
static Boolean SetValues();
static void ClassInitialize();
static void Destroy();


 



static XtGeometryResult geometry_manager ();
static void  managed_set_changed ();
static void  add_child ();
static void  remove_child ();


 


































































































 
















					     
					     
















					     
					     













 



typedef struct
{
    XtCallbackList	ecallback;	 
}
    DwtCallbackStruct, *DwtCallbackStructPtr;



 



typedef char * DwtCompStringArray;



 




typedef struct
{
    char   *kid;				 
    XtWidgetGeometry	box;			 
}
    DwtKidGeometryRec, *DwtKidGeometry;






 
 
 

typedef struct {
	XtProc		pad0;		 
	XtProc		pad1;		 
	XtProc		pad2;		 
	caddr_t		extension;	 
} DwtCommonClassPart;


typedef struct _DwtCommonClassRec {
    CoreClassPart       core_class;
    CompositeClassPart  composite_class;
    DwtCommonClassPart  dwtcommon_class;
} DwtCommonClassRec, *DwtCommonClass;

typedef struct {
        DwtFontList	    fontlist;   
	Pixel		    foreground_pixel;
	DwtCallbackStruct   help_callback;
	Pixmap		    pixmap;
	Pixel		    highlight_pixel;
	Pixmap		    highlight_pixmap;
	Pixmap		    gray_pixmap;
	GC		    foreground_gc;
	GC		    background_gc;
	GC		    highlight_gc;
	GC		    slider_gc;
	Pixel		    slider_pixel;
	Pixmap		    slider_pixmap;
        GC		    background_color_gc;

        char		   *user_data;		 

	Boolean		    propagate_colors;
	unsigned char	    directionRToL;
} DwtCommonPart;

typedef struct {
    CorePart		core;
    CompositePart 	composite;
    DwtCommonPart	dwtcommon;
} DwtCommonWidgetRec, *DwtCommonWidget;


extern  DwtCommonClass    dwtcommonwidgetclass;
extern  DwtCommonClassRec dwtcommonwidgetclassrec;



 
 
 

typedef struct _InputRec *Input;
typedef struct _OutputRec *Output;
typedef struct _TextDataRec *TextData;
typedef struct _LineTableExtraRec *LineTableExtra;



typedef struct {
	caddr_t		extension;	 
} TextClassPart;

typedef struct _TextClassRec {
    CoreClassPart core_class;
    CompositeClassPart composite_class;
    TextClassPart text_class;
} TextClassRec, *TextClass;


typedef struct _TextRec {
    CorePart	core;
    CompositePart composite;
    Widget innerwidget;			 
					 
					 
    DwtTextSource source;		 
    DwtCallbackStruct callback;		 
    DwtCallbackStruct help_callback;	 
    DwtCallbackStruct focus_callback;	 
    DwtCallbackStruct lostfocus_callback; 
    DwtCallbackStruct changed_callback;	 
    Output output;			 
    Input input;			 
    TextData text;			 

     

    char		   *user_data;		 

} TextWidgetRec, *TextWidget;



extern  WidgetClass       textwidgetclass;
extern  TextClassRec      textwidgetclassrec;



extern  TextClassRec      stextwidgetclassrec;
extern  WidgetClass       stextwidgetclass;



extern  TextClassRec      cstextwidgetclassrec;
extern  WidgetClass       cstextwidgetclass;



 
 
 


 




typedef struct _Comp_String{
    long charset;        
    XFontStruct *font;   
    char *text;          
    long language;       
    long direction;      
    char *rendition;     
    int  pixel_width;    
  } DwtCompStringRec;


typedef struct {			 
	caddr_t		extension;	 
} LabelClassPart;


typedef struct _LabelClassRec {		 

	CoreClassPart		core_class;
	CompositeClassPart	composite_class;
        DwtCommonClassPart      dwtcommon_class;
	LabelClassPart		label_class;
} LabelClassRec, *LabelClass;


typedef struct {			 
	DwtCompString 		label;
	DwtCompStringArray    	label_array;
	XImage			*image;
        Pixmap          	local_pixmap;

	Dimension	margin_height;		 
	Dimension	margin_width;

	Dimension	margin_left;		 
	Dimension	margin_right;		 
	Dimension	margin_top;		 
	Dimension	margin_bottom;		 
	unsigned char	drawing_mode;
 	unsigned char	label_type;
	unsigned char	alignment;
	Boolean		selection_mode;
	Boolean		conform_to_text;	 
						 
						 
	Boolean		shadow;			 
} LabelPart;



typedef struct _LabelRec {		 
	CorePart	core;
	CompositePart   composite;
        DwtCommonPart   dwtcommon;
	LabelPart	label;
} LabelRec, *LabelWidget;


extern  LabelClassRec       labelwidgetclassrec;
extern  LabelClass          labelwidgetclass;




 
 
 

 




typedef struct 
{
	caddr_t		extension;	 
}
    PushbuttonClassPart;


 



typedef struct _PushbuttonClassRec
{
    	CoreClassPart	    core_class;		 
	CompositeClassPart  composite_class;
        DwtCommonClassPart  dwtcommon_class;
    	LabelClassPart	    label_class;         
    	PushbuttonClassPart pushbutton_class;	 
} 
    PushbuttonClassRec, *PushbuttonClass;

 




typedef struct
{
    DwtCallbackStruct	    activate_callback,	 
			    arm_callback,	 
			    disarm_callback;	 
    Boolean		    bordHighlight;	 
    Boolean		    fillHighlight;	 
    Boolean		    armed;		 

    char		   *accel_left_side;	 
						 
						 
						 
						 

    DwtCompStringArray	    accel_array;	 
						 
						 

    DwtCompString 	    accel_text;		 
						 

     

    Pixmap                  insensitive_pixmap;  
                                                 
} 
    PushbuttonPart;




typedef struct _PushbuttonRec
{
    CorePart		    core;
    CompositePart	    composite;
    DwtCommonPart	    dwtcommon;
    LabelPart		    label;
    PushbuttonPart	    pushbutton;
} 
    PushbuttonRec, *PushbuttonWidget;


extern  PushbuttonClassRec pushbuttonwidgetclassrec;
extern  PushbuttonClass    pushbuttonwidgetclass;




 
 
 

 




typedef struct 
{
	caddr_t		extension;	 
}
    TogglebuttonClassPart;


 



typedef struct _TogglebuttonClassRec
{
    CoreClassPart	    core_class;		 
    CompositeClassPart	    composite_class;
    DwtCommonClassPart	    dwtcommon_class;
    LabelClassPart	    label_class;         
    TogglebuttonClassPart   togglebutton_class;  
} 
    TogglebuttonClassRec, *TogglebuttonClass;

 




typedef struct
{
    Position		    indicator_x,	 
    			    indicator_y;

    Dimension		    indicator_width;	 
    Dimension		    indicator_height;

    DwtCallbackStruct	value_change_callback,	 
			arm_callback,		 
			disarm_callback;	 

    Pixmap		    pixmap_on,		 
			    pixmap_off;		 
						 
    short		    spacing;		 
						 

    unsigned char 	    shape;		 
						 

    Boolean		    armed;		 

    Boolean		    value;		 

    Boolean		    visibleWhenOff;	 

    Boolean		    indicator_bdr_highlight;
						 
						 

    char		   *accel_left_side;	 
						 
						 
						 
						 

    DwtCompStringArray	    accel_array;	 
						 
						 

    DwtCompString 	    accel_text;		 
						 

    Boolean		    indicator;		 
    unsigned char 	    pad0;		 
    unsigned char 	    pad1;		 
    unsigned char 	    pad2;		 

     
    Pixmap                  insensitive_pixmap_on;  
      						 
    Pixmap                  insensitive_pixmap_off;  
      						 
} 
    TogglebuttonPart;




typedef struct _TogglebuttonRec
{
    CorePart		    core;
    CompositePart	    composite;
    DwtCommonPart	    dwtcommon;
    LabelPart		    label;
    TogglebuttonPart	    togglebutton;
} 
    TogglebuttonRec, *TogglebuttonWidget;


extern  TogglebuttonClassRec togglebuttonwidgetclassrec;
extern  TogglebuttonClass    togglebuttonwidgetclass;







 





 




typedef struct
{
    XtGrabKind		    grabkind;

     

    char		   *user_data;		 
} 
    HiddenShellPart;

 



typedef struct 
{
    CorePart		    core;		 
    CompositePart	    composite;		 
    ShellPart		    shell;		 
    WMShellPart		    wm;
    VendorShellPart	    vendor;
    TopLevelShellPart	    topLevel;
    HiddenShellPart	    hiddenshell;	 
} 
    HiddenShellWidgetRec, *HiddenShellWidget;

 




typedef struct 
{
	caddr_t		extension;	 
}
    HiddenShellClassPart;


typedef struct _HiddenShellClassRec 
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    ShellClassPart	    shell_class;
    WMShellClassPart        wm_shell_class;
    VendorShellClassPart    vendor_shell_class;
    TopLevelShellClassPart  top_level_shell_class;
    HiddenShellClassPart    hidden_shell_class;
} 
    HiddenShellClassRec, *HiddenShellClass;


extern  HiddenShellClassRec  hiddenshellwidgetclassrec;
extern  HiddenShellClass     hiddenshellwidgetclass;






 





 




typedef struct
{
    Dimension		    margin_width;	 
    Dimension		    margin_height;	 
						 

    Widget		    current_focus;	 

    Widget		    shell;		 
						 

    Widget		    default_button;	 
						 

    Widget		    cancel_button;	 
						 

    DwtCallbackStruct	    help_callback,	 
			    select_callback,	 
			    map_callback,	 
			    unmap_callback,	 
			    focus_callback;	 

    XtTranslations	    texttranslations;	 
						 

    DwtFontList             fontlist;		 
						 

    float		    scale_x,		 
			    scale_y;

    DwtCompString 	    title;		 

    char		   *user_data;		 

    Boolean                 auto_unrealize;	 
						 

    unsigned char	    style;		 

    unsigned char	    units;		 
						 

    unsigned char	    resize_mode;	 
						 

    Boolean		    defaultposition;	 
						 

    Boolean		    auto_unmanage;	 
						 

    unsigned char	    directionRToL;       
                                                 

    Boolean		    child_overlap;	 
						 

    Boolean		    take_focus;		 
						 

    Boolean		    no_resize;		 
						 
    Pixel		    foreground_pixel;	 
    GC			    foreground_gc;       
    Pixmap		    pixmap;		 
    GC			    background_gc;	 
    GC			    background_color_gc; 
    Pixel		    highlight_pixel;	 
    Pixmap		    highlight_pixmap;	 
    GC			    highlight_gc;	 
    Pixmap		    gray_pixmap;         

    GC			    insensitive_fore_gc; 
    GC			    insensitive_high_gc; 

    Object		    current_gadget;	 
    Boolean		    flags;		 

    XtTranslations	    grabmergetranslations; 
						 
    KeySym *		    grabkeysyms;	 
} 
    DialogPart;



 



typedef struct 
{
    CorePart		    core;		 
    CompositePart	    composite;		 
    ConstraintPart	    constraint;
    DialogPart		    dialog;		 
} 
    DialogWidgetRec, *DialogWidget;

 




typedef struct 
{
    VoidProc  		move_focus_to_next;  
    VoidProc  		move_focus_to_prev;  
    XtProc		pad0;		     
    XtProc		pad1;		     
    XtProc		pad2;		     
    caddr_t		extension;	     
}
    DialogClassPart;


typedef struct _DialogClassRec 
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    ConstraintClassPart	    constraint_class;
    DialogClassPart	    dialog_class;
} 
    DialogClassRec, *DialogClass;

 




typedef struct _DialogConstraintPart
{
    Position    font_x,				 
	        font_y;				 
}
    DialogConstraintPart, *DialogConstraint;

typedef struct _DialogConstraintRec
{
    DialogConstraintPart	dialog;
}
    DialogConstraintRec, *DialogConstraintPtr;


extern  DialogClassRec     dialogwidgetclassrec;
extern  DialogClass        dialogwidgetclass;



 




typedef struct 
{
    int			    mumble;

     

    char		   *user_data;		 

    Widget		   last_managed;

}
    MenuPopupPart;


 



typedef  struct 
{
    CorePart		    core;
    CompositePart	    composite;
    ShellPart		    shell;
    OverrideShellPart	    override;
    MenuPopupPart	    popup;
} 
    MenuPopupRec, *MenuPopupWidget;




 




typedef struct 
{
	caddr_t		extension;	 
} 
    MenuPopupClassPart;



typedef struct  
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    ShellClassPart	    shell_class;
    OverrideShellClassPart  override_shell_class;
    MenuPopupClassPart	    popup_part;
} 
    MenuPopupClassRec, *MenuPopupWidgetClass;



extern  MenuPopupClassRec  menupopupClassRec;
extern  WidgetClass	    menupopupWidgetClass;




 




 





typedef	struct 
{
    Dimension		margin_height;	 
    Dimension		margin_width;


    Dimension		spacing;	 
    Dimension		entry_border;	 

					 

    Widget		help_pushbutton; 

    Widget		pulldown;	 
					 
					 
					 

     

    Position		popup_memory_x;	 
					 
					 
					 
    Position		popup_memory_y;	 
					 
					 
					 


					 
					 
					 
					 
					 

    DwtCompString 	option_label;	 

    Widget		option_submenu;  


    DwtKidGeometry	boxes;		 
					 

    WidgetClass		entry_class;	 

    DwtCallbackStruct	entry_callback,	 
			select_callback, 
			map_callback,	 
			unmap_callback;	 

    Widget		memory_subwidget;    
					 
					 
					 
					 


    short		num_columns;	 
					 

    unsigned char	entry_alignment;  
					 

					 
					 
					 
					 
					 

    unsigned char	packing;	 

    unsigned char	resize_mode;	 

    unsigned char	type;		 

    unsigned char	orientation;	 

					 
					 
					 
					 
					 
					 

    Boolean		armed;		 
					 
					 

					 

    Boolean		adjust_margin;	 
					 
					 


    Boolean		do_alignment;	 
					 

    Boolean		radio;		 
					 

    Boolean		radio_one;	 
					 


    Boolean		homogeneous;	 
					 

    Boolean		fixed_width;
    Boolean		fixed_height;
    GC			insensitive_fore_gc; 
    GC			insensitive_high_gc; 

    Object		current_gadget;	     

    Dimension		kid_margin_width;    
    Dimension		kid_margin_height;   
    Dimension		kid_margin_left;     
    Dimension		kid_margin_right;
    Dimension		kid_margin_top;
    Dimension		kid_margin_bottom;

     

    Boolean		change_vis_atts;     
    Widget		submenu_shell;	     

     

    Boolean		extend_last_row;
}
    MenuPart;



 



typedef struct 
{
    CorePart		core;		 
    CompositePart	composite;	 
    DwtCommonPart	dwtcommon;	 
    MenuPart		menu;		 
} 
    MenuWidgetRec, *MenuWidget;



 




typedef struct 
{
    VoidProc		position;	 
					 
					 
					 
					 
					 

	XtProc		pad0;		 
	XtProc		pad1;		 
	XtProc		pad2;		 
    caddr_t		extension;	 
}
    MenuClassPart;




typedef struct _MenuClassRec 
{
    CoreClassPart	core_class;
    CompositeClassPart	composite_class;
    DwtCommonClassPart	dwtcommon_class;
    MenuClassPart	menu_class;
} 
    MenuClassRec, *MenuWidgetClass;



extern  MenuClassRec     menuwidgetclassrec;
extern  MenuWidgetClass  menuwidgetclass;



 








 



typedef	struct 
{
    DwtCallbackStruct	activate_callback,	 
			select_callback,	 
			pulling_callback;	 
						 
						 

    XtTranslations	hot_events;		 
    XtActionList	hot_actions;		 

    int			hot_widget;		 


    Widget		submenu;		 

    Pixmap		hot_pixmap;		 

    Boolean		pulled_down;		 

     

    Pixmap              hot_insensitive_pixmap;  
                                                 

    Dimension		hot_width;		 

    Dimension		hot_height;		 

    caddr_t		hot_visual;		 

    char		hot_visual_type;	 

    Pixel		hot_foreground_pixel;    

    Pixel		hot_background_pixel;    

} 
    PulldownPart;




 



typedef struct 
{
    CorePart		core;
    CompositePart	composite;
    DwtCommonPart	dwtcommon;
    LabelPart		label;
    PulldownPart	pulldown;
} 
    PulldownWidgetRec, *PulldownWidget;





 




typedef struct 
{
    VoidProc		highlight;		 
						 
						 
						 
						 
    caddr_t		extension;	 
}
    PulldownClassPart;




typedef struct _PulldownClassRec 
{
    CoreClassPart	    core_class;		 
    CompositeClassPart	    composite_class;	 
    DwtCommonClassPart	    dwtcommon_class;	 
    LabelClassPart	    label_class;         
    PulldownClassPart	    pulldown_class;	 
} 
    PulldownClassRec, *PulldownWidgetClass;



extern  PulldownClassRec     pulldownwidgetclassrec;
extern  PulldownWidgetClass  pulldownwidgetclass;



 
 
 


typedef struct
{

    Widget		    button1;
    Widget		    button2;
    int			   *translations1;
    int			   *translations2;
    Pixmap		    button1_pixmap;
    Pixmap		    button2_pixmap;
    int			    shown;		 
    int			    inc;		 
						 
    int			    pageinc;		 
						 
    int			    value;		 
    int			    maxvalue;		 
    int			    minvalue;		 
    Position		    oldx1, oldx2;
    Position		    oldy1, oldy2;	 
    Position		    dx1, dx2, dy1, dy2;	 
						 
    Position		    grabx, graby;	 
    int			    dvalue;		 
    DwtCallbackStruct	    unit_inc_callback,
			    unit_dec_callback,
			    page_inc_callback,
			    page_dec_callback,
			    drag_callback,
			    to_bottom_callback,
			    to_top_callback,
			    callback,
			    to_position_callback;

    unsigned char	    orientation;
    Boolean		    thumb_redraw;	 
    Boolean		    got_thumb;		 
    Boolean		    drag_start;		 
    Boolean		    drag_end;		 
    Boolean		    pixmap_flag;	 
    Boolean		    notify;		 
    int                     button_status;       
    Position		    button_eventx;       
    Position		    button_eventy;       
    int                     button_number;       
    int                     button_waitms;       
    int                     button_repeatms;     
    int                     button_timerid;      

     

    Boolean                 show_arrows;         
    Pixmap                  button1_pixmap_filled;  
    Pixmap                  button2_pixmap_filled;  
    short		    button_amount;	 

} ScrollPart;


typedef struct 
{
    CorePart		    core;		 
    CompositePart	    composite;		 
    DwtCommonPart	    dwtcommon;
    ScrollPart		    scroll;
} 
    ScrollWidgetRec, *ScrollWidget;

typedef struct
{
    caddr_t		extension;	 
} ScrollClassPart;

typedef struct _ScrollClassRec 
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    DwtCommonClassPart	    dwtcommon_class;
    ScrollClassPart	    scroll_class;
} 
    ScrollClassRec, *ScrollClass;



extern  ScrollClassRec     scrollwidgetclassrec;
extern  ScrollClass        scrollwidgetclass;



 




typedef	struct 
{
    Widget		    command_window,
			    work_window,
			    menu_bar,
			    h_scroll,
			    v_scroll,
			    scroll_label,	 
			    current_focus;	 

    DwtCallbackStruct	    focus_callback;	 

    Boolean		    calculate_size;	 
						 

    Boolean		    do_layout;		 
						 
						 
    Boolean		    accept_focus_flag;
} 
    MainWindowPart;

 



typedef struct 
{
    CorePart		    core;		 
    CompositePart	    composite;		 
    DwtCommonPart	    dwtcommon;
    MainWindowPart	    main_window;	 
} 
    MainWindowWidgetRec, * MainWindowWidget;

typedef struct 
{
    caddr_t		extension;	 
} 
    MainWindowClassPart;

typedef struct _MainWindowClassRec 
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    DwtCommonClassPart	    dwtcommon_class;
    MainWindowClassPart	    main_window_class;
} 
    MainWindowClassRec, * MainWindowWidgetClass;



extern  MainWindowClassRec     mainwindowwidgetclassrec;
extern  MainWindowWidgetClass  mainwindowwidgetclass;




 




 




typedef struct
{
    DwtCompString 	    label;
    DwtCompString 	    yeslabel;
    DwtCompString 	    nolabel;
    DwtCompString 	    cancellabel;
    DwtCompString 	    oklabel;

    DwtCallbackStruct	    yes_callback;
    DwtCallbackStruct	    no_callback;
    DwtCallbackStruct	    cancel_callback;

    Widget		    iconwid;

    Widget		    labelwid,
			    yeslabelwid,
			    nolabelwid,
			    cancellabelwid;

    unsigned char	    type;
    unsigned char	    labeltype;
    unsigned char	    yeslabeltype;
    unsigned char	    nolabeltype;
    unsigned char	    cancellabeltype;
    unsigned char	    oklabeltype;

    unsigned char	    default_pb;

     

    Widget		    slabelwid;
    DwtCompString 	    slabel;
    unsigned char	    slabeltype;
    unsigned char	    slabelalignment;
    unsigned char	    labelalignment;
    Pixmap		    pixmap;
} 
    MessagePart;

 



typedef struct 
{
    CorePart		    core;		 
    CompositePart	    composite;		 
    ConstraintPart	    constraint;
    DialogPart		    dialog;		 
    MessagePart		    message;		 
} 
    MessageWidgetRec, *MessageWidget;

 




typedef struct 
{
    caddr_t		extension;	 
}
    MessageClassPart;


typedef struct _MessageClassRec 
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    ConstraintClassPart	    constraint_class;
    DialogClassPart	    dialog_class;
    MessageClassPart	    message_class;
} 
    MessageClassRec, *MessageClass;


extern  MessageClassRec    messagewidgetclassrec;
extern  MessageClass	    messagewidgetclass;



 




typedef struct 
{
    DwtCallbackStruct expose_callback;
} 
    WindowPart;

typedef struct 
{
    CorePart		    core;		 
    CompositePart	    composite;		 
    DwtCommonPart	    dwtcommon;
    WindowPart		    window;
} 
    WindowWidgetRec, *WindowWidget;


typedef struct
{
    caddr_t		extension;	 
}
    WindowClassPart;


typedef struct _WindowClassRec 
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    DwtCommonClassPart	    dwtcommon_class;
    WindowClassPart	    window_class;
} 
    WindowClassRec, *WindowClass;



extern  WindowClassRec     windowwidgetclassrec;
extern  WindowClass        windowwidgetclass;




 




typedef struct 
{
    Widget  hscroll;
    Widget  vscroll;
    Widget  wregion;
    Boolean     shownautomaticvert;
    Boolean     shownautomatichoriz;
    Boolean	do_layout;			 
						 
						 
    Widget label;

} ScrollWindowPart;

typedef struct 
{
    CorePart	     core;		 
    CompositePart    composite;		 
    DwtCommonPart    dwtcommon;
    ScrollWindowPart scrollwindow;
} 
    ScrollWindowWidgetRec, *ScrollWindowWidget;

typedef struct
{
    caddr_t		extension;	 
} ScrollWindowClassPart;

typedef struct _ScrollWindowClassRec 
{
    CoreClassPart	  core_class;
    CompositeClassPart	  composite_class;
    DwtCommonClassPart    dwtcommon_class;
    ScrollWindowClassPart scrollwindow_class;
} 
    ScrollWindowClassRec, *ScrollWindowClass;



extern  ScrollWindowClassRec     scrollwindowwidgetclassrec;
extern  ScrollWindowClass        scrollwindowwidgetclass;




 
 
 

 




typedef struct 
{
    caddr_t		extension;	 
}
    ListBoxClassPart;


 



typedef struct _ListBoxClassRec
{
    	CoreClassPart	    	core_class;		 
	CompositeClassPart  	composite_class;
    	DwtCommonClassPart    	dwtcommon_class;
    	ScrollWindowClassPart	scrollwindow_class;      
    	ListBoxClassPart 	listbox_class;		 
} 
    ListBoxClassRec, *ListBoxClass;

 




typedef struct
{
    MenuWidget		menu;			 
    Dimension		vis_menu_width;        	 
    Dimension 		multi_selection;     	 
    ScrollWidget	scrollbar;		 
    ScrollWidget	hscrollbar;		 
    Dimension		spacing;		 
    DwtCompString 	*items;	 		 
    int			itemsCount;	 	 
    DwtCompString 	*selectedItems;		 
    int			selectedItemsCount; 	 
    int			visibleItemsCount; 	 
    int			top_position;		 
    int			current_max_item;	 
    DwtCallbackStruct	single_callback,	 
			singlec_callback,	 
			extend_callback, 	 
			extendc_callback; 	 
    Dimension		margin_height;		 
    Dimension		margin_width;
    Boolean		ok_to_scroll_items;      
    Boolean		horizontal;              
    Boolean      	resize;  	 	  
    Boolean        	singleSelection; 	 

     

    Time		double_click_delay;	 
    Time		last_click_time;	 
    Boolean		double_click;		 
} 
    ListBoxPart;


typedef struct _ListBoxRec
{                       
    CorePart		core;
    CompositePart	composite;
    DwtCommonPart    	dwtcommon;
    ScrollWindowPart	scrollwindow;
    ListBoxPart		listbox;
} 
    ListBoxRec, *ListBoxWidget;



extern  ListBoxClassRec listboxwidgetclassrec;
extern  ListBoxClass    listboxwidgetclass;



 
 
 


typedef struct
{

    int         value;           
    int		maxvalue;        
    int         minvalue;	 
    Position    oldx1,oldx2;
    Position    oldy1,oldy2;     
    Position    dx1,dx2,dy1,dy2;  
    Position    grabx, graby;     
    int         dvalue;           
    Position    scale_scx;	  
    Position    scale_scy;        
    Dimension   scale_scw;
    Dimension   scale_sch;
    DwtCallbackStruct drag_callback;
    DwtCallbackStruct callback;

    DwtCompString 	title;
    Widget      title_widget;
    Dimension	scale_width;
    Dimension	scale_height;
    Position    scale_x;
    Position    scale_y;
    int         grab_oldvalue;
    Pixmap	slider_pixmap;
    short	decimal_points;
    unsigned char title_type;
    unsigned char slider_label_type;
    unsigned char orientation;
    Boolean	show_value;
    Boolean	show_value_automatic;
    Boolean     thumb_redraw;     
    Boolean     got_thumb;        
    Boolean	drag_start;       
    Boolean     drag_end;         
    Boolean     pixmap_flag;      

} ScalePart;


typedef struct 
{
    CorePart	    core;		 
    CompositePart   composite;		 
    DwtCommonPart   dwtcommon;
    ScalePart	    scale;
} 
    ScaleWidgetRec, *ScaleWidget;

typedef struct
{
    caddr_t		extension;	 
} ScaleClassPart;

typedef struct _ScaleClassRec 
{
    CoreClassPart	core_class;
    CompositeClassPart	composite_class;
    DwtCommonClassPart  dwtcommon_class;
    ScaleClassPart	scale_class;
} 
    ScaleClassRec, *ScaleClass;



extern  ScaleClassRec     scalewidgetclassrec;
extern  ScaleClass        scalewidgetclass;




 




typedef struct _recall_node
{
    struct _recall_node	   *next;
    struct _recall_node	   *prev;
    char		   *pointer;
} recall_node;


 


typedef struct
{
    char		    *value;
    DwtCompString 	    prompt;
    char		    *history;
    XtTranslations	    ttranslation;
    Widget		    valuewid;
    Widget		    promptwid;
    Widget		    historywid;
    recall_node		    *recall_list,
			    *recall_pointer;
    DwtCallbackStruct       callback;
    DwtCallbackStruct       value_changed_callback;
    short		    lines;
    short		    history_lines;
    Boolean		    paste_flag;
    Boolean		    change_value_off;
}
    CommandPart;

 



typedef struct
{
    CorePart		    core;                
    CompositePart	    composite;           
    ConstraintPart	    constraint;
    DialogPart		    dialog;              
    CommandPart		    command;             
}
    CommandWidgetRec, *CommandWidget;

 




typedef struct
{
    caddr_t		extension;	 
}
    CommandClassPart;


typedef struct _CommandClassRec
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    ConstraintClassPart	    constraint_class;
    DialogClassPart	    dialog_class;
    CommandClassPart	    command_class;
}
    CommandClassRec, *CommandClass;


extern  CommandClassRec    commandwidgetclassrec;
extern  CommandClass	    commandwidgetclass;



 




 




typedef struct
{
    DwtCompString 	selectionlabel;    
    LabelWidget		selectionlabelwid;  
    DwtCompString 	value;             
    TextWidget		selectiontextwid;  
    DwtCompString 	oklabel;           
    PushbuttonWidget	okwid;             
    DwtCompString 	cancellabel;       
    PushbuttonWidget	cancelwid;         
    DwtCompString 	label;             
    LabelWidget		labelwid;          
    DwtCompString 	*items;	  	   
    int			itemsCount;	   
    int			vis_items;         
    ListBoxWidget	listboxwid;        
    Widget		work_area_widget;  
    int			text_cols;	   
    DwtCallbackStruct	callback,	   
			nomatch_callback,  
			cancel_callback;   
    long		stext_charset;	   
    long		stext_direction;   
    unsigned char	selectionlabeltype;  
    unsigned char	oklabeltype;       
    unsigned char	cancellabeltype;   
    unsigned char	labeltype; 	   
    Boolean		adding_sel_widgets;  
    Boolean		must_match;	   
    Boolean		auto_arrange;      

     

    XtWidgetProc	filetoextern;   
    XtWidgetProc	filetointern;   
    DwtCompString 	*getvalitems;   
				        
    int			getvalitemsCount;
} 
    SelectionPart;

 



typedef struct 
{
    CorePart	    	core;			 
    CompositePart   	composite;		 
    ConstraintPart	constraint;
    DialogPart	    	dialog;			 
    SelectionPart	selection;		 
} 
    SelectionWidgetRec, *SelectionWidget;


 




typedef struct 
{
    caddr_t		extension;	 
}
    SelectionClassPart;


typedef struct _SelectionClassRec 
{
    CoreClassPart		core_class;
    CompositeClassPart		composite_class;
    ConstraintClassPart		constraint_class;
    DialogClassPart		dialog_class;
    SelectionClassPart		selection_class;
} 
    SelectionClassRec, *SelectionClass;


extern  SelectionClassRec  	selectionwidgetclassrec;
extern  SelectionClass     	selectionwidgetclass;



 




 




typedef struct
{
    DwtCompString 	filterlabel;       
    LabelWidget		filterlabelwid;    
    DwtCompString 	dir_mask;          
    TextWidget		textwid;           
    DwtCompString 	applylabel;        
    PushbuttonWidget	applywid;          
    XtWidgetProc	file_search_proc;  
    DwtCompString 	dir_spec;	   
    long		fs_stext_charset;  
    long		fs_stext_direction;  
    short	        dir_spec_len;	   
    short	        realize_search_done;  
    unsigned char	filterlabeltype;   
    unsigned char	applylabeltype;    
    Boolean		list_updated;      

     

    XtWidgetProc	masktoextern;   
    XtWidgetProc	masktointern;   
} 
    FileSelectionPart;

 



typedef struct 
{
    CorePart	    	core;			 
    CompositePart   	composite;		 
    ConstraintPart	constraint;
    DialogPart	    	dialog;			 
    SelectionPart	selection;		 
    FileSelectionPart	fileselection;		 
} 
    FileSelectionWidgetRec, *FileSelectionWidget;


 




typedef struct 
{
    caddr_t		extension;	 
}
    FileSelectionClassPart;


typedef struct _FileSelectionClassRec 
{
    CoreClassPart		core_class;
    CompositeClassPart		composite_class;
    ConstraintClassPart		constraint_class;
    DialogClassPart		dialog_class;
    SelectionClassPart		selection_class;
    FileSelectionClassPart	fileselection_class;
} 
    FileSelectionClassRec, *FileSelectionClass;


extern  FileSelectionClassRec  fileselectionwidgetclassrec;
extern  FileSelectionClass     fileselectionwidgetclass;



 





 



typedef	struct 
{
    unsigned char  orientation;	 
} 
    SeparatorPart;




 



typedef struct 
{
    CorePart		    core;
    CompositePart	    composite;
    DwtCommonPart	    dwtcommon;
    LabelPart		    label;
    SeparatorPart	    separator;
} 
    SeparatorWidgetRec, *SeparatorWidget;

 




typedef struct 
{
    caddr_t		extension;	 
}
    SeparatorClassPart;


typedef struct 
{
    CoreClassPart	    core_class;		 
    CompositeClassPart	    composite_class;	 
    DwtCommonClassPart	    dwtcommon_class;
    LabelClassPart	    label_class;         
    SeparatorClassPart	    separator_class;	 
} 
    SeparatorClassRec, *SeparatorWidgetClass;



extern  SeparatorClassRec     separatorwidgetclassrec;
extern  SeparatorWidgetClass  separatorwidgetclass;



 
 
 
 
 
 


 




typedef struct
{
    XtGrabKind		    grabkind;
} 
    HelpShellPart;

 



typedef struct 
{
    CorePart		core;	     
    CompositePart	composite;   
    ShellPart		shell;	     
    WMShellPart		wm;	     
    VendorShellPart	vendor;	     
    TopLevelShellPart	topLevel;    
    HelpShellPart	helpshell;   
} 
    HelpShellWidgetRec, *HelpShellWidget;

 




typedef struct 
{
    caddr_t		extension;	 
}
    HelpShellClassPart;


typedef struct _HelpShellClassRec 
{
    CoreClassPart	    core_class;
    CompositeClassPart	    composite_class;
    ShellClassPart	    shell_class;
    WMShellClassPart	    wm_shell_class;
    VendorShellClassPart    vendor_shell_class;
    TopLevelShellClassPart  top_level_shell_class;
    HelpShellClassPart	    help_shell_class;
} 
    HelpShellClassRec, *HelpShellClass;


extern  HelpShellClassRec  helpshellwidgetclassrec;
extern  HelpShellClass     helpshellwidgetclass;



 
 
 
 
 
   

 

typedef struct _DwthelpTrail {
    char		*topic;
    char		*title;
    struct _DwthelpTrail *next;
} DwthelpTrail;
    
typedef struct _DwthelpBox {
    Widget		box;
    Widget		label1;
    Widget		label2;
    Widget		button0;
    Widget		button1;
    Widget		button2;
    Widget		button3;
    Widget		listbox1;
    Widget		listbox2;
    Widget		text;
}DwthelpBox;
    
typedef struct {
    DwtCompString	application;		     
    unsigned char	applabeltype;		     
    DwtCompString	library;		     
    DwtCompString	first_topic;		     
    DwtCompString	overview;		     
    DwtCompString	glossary;		     

    unsigned int	library_type;		     
    int			colons;			     
						     
    int			rows;			     
						     
    DwtCallbackStruct	unmap_callback;		     
    Boolean		default_pos;		     

    Widget		shell;			     
    Widget		menubar;		     
    Widget		help_text;		     
    Widget		help_topic;		     
    Widget		add_topic;		     
    Widget		goback;			     
    Widget		quit;			     
    Widget		overview_button;	     
    Widget		glossary_button;	     
	
    DwtCompString	title;			     
    unsigned char	titletype;		     

    char		*library_context;	     
    DwtCompString	text;			     
    DwthelpTrail	*trail;			     
    DwtCompString	selected_topic;	    	     
    DwtCompString	selected_title;	    	     
    char		**topic_array;		     
    char		**title_array;		     
    int			topic_count;		     
						     
    int			visible_count;		     
						     
    DwtFontList		help_fontlist;		     
						     
    
    DwthelpBox		*saveas_box;		     
	
    DwthelpBox		*title_box;		     
						     
    char		**searchtitle_topic_array;   
						     
    DwtCompString	selected_searchtitle_topic; 
						     
    
    DwthelpBox		*keyword_box;		     
						     
    char		**keyword_array;	     
						     
    DwtCompString	selected_keyword;	     
						     
    char		**searchkeyword_topic_array; 
						     
    DwtCompString	selected_searchkeyword_topic; 
						       
    
    DwthelpBox		*history_box;		     
						     
    DwthelpTrail	*history;		     
						     
    DwtCompString	selected_history_topic;     
						     
    int			history_count;		     
						     

    DwtCompString	view_menu_label;	     
    unsigned char	viewlabeltype;		     
    DwtCompString	goto_label;		     
    unsigned char	gotolabeltype;		     
    DwtCompString	goback_label;		     
    unsigned char	gobacklabeltype;	     
    DwtCompString	goover_label;		     
    unsigned char	gooverlabeltype;	     
    DwtCompString	visit_label;		     
    unsigned char	visitlabeltype;		     
    DwtCompString	visitglos_label;	     
    unsigned char	visitgloslabeltype;	     
    DwtCompString	file_menu_label;	     
    unsigned char	filelabeltype;		     
    DwtCompString	saveas_label;		     
    unsigned char	saveaslabeltype;	     
    DwtCompString	exit_label;		     
    unsigned char	exitlabeltype;		     
    DwtCompString	edit_menu_label;	     
    unsigned char	editlabeltype;		     
    DwtCompString	copy_label;		     
    unsigned char	copylabeltype;		     
    DwtCompString	selectall_label;	     
    unsigned char	selectalllabeltype;	     
    DwtCompString	search_menu_label;	     
    unsigned char	searchlabeltype;	     
    DwtCompString	history_label;		     
    unsigned char	historylabeltype;	     
    DwtCompString	title_label;		     
    unsigned char	titlelabeltype;		     
    DwtCompString	keyword_label;		     
    unsigned char	keywordlabeltype;	     
    DwtCompString	help_menu_label;	     
    unsigned char	helplabeltype;		     
    DwtCompString	helphelp_label;		     
    unsigned char	helphelplabeltype;	     
    DwtCompString	glossary_label;		     
    unsigned char	glossarylabeltype;	     
    DwtCompString	about_label;		     
    unsigned char	aboutlabeltype;		     
    DwtCompString	addtopic_label;		     
    unsigned char	addtopiclabeltype;	     
    DwtCompString	history_box_label;	     
    unsigned char	historyboxlabeltype;	     
    DwtCompString	topic_titles_label;	     
    unsigned char       topictitleslabeltype;	     
    DwtCompString	dismiss_label;		     
    unsigned char	dismisslabeltype;	     
    DwtCompString	searchtitle_box_label;	     
    unsigned char	searchtitleboxlabeltype;     
    DwtCompString	titles_label;		     
    unsigned char	titleslabeltype;	     
    DwtCompString	searchkeyword_box_label;     
    unsigned char	searchkeywordboxlabeltype;   
    DwtCompString	keywords_label;		     
    unsigned char	keywordslabeltype;	     
    DwtCompString	saveas_box_label;	     
    unsigned char	saveasboxlabeltype;	     
    DwtCompString	saveas_text_label;	     
    unsigned char	saveastextlabeltype;	     
    DwtCompString	ok_label;		     
    unsigned char	oklabeltype;		     
    DwtCompString	cancel_label;		     	
    unsigned char	cancellabeltype;	     
    DwtCompString	apply_label;		     
    unsigned char	applylabeltype;		     
    int			button_width;		     
    Widget		goto_button;		     
    Widget		goback_button;		     
    Widget		visit_button;		     
    Widget		copy_button;		     
    Widget		history_button;		     
    Widget		title_button;		     
    Widget		keyword_button;		     
    Widget		message_box;		     
    Boolean		message;		     
    DwtCompString	message_text;		     
    unsigned char	message_type;		     
    DwtCompString	message_title;		     
    unsigned char	messagetitletype;	     
    DwtCompString	badlib_message;		     
    DwtCompString	badframe_message;	     
    DwtCompString	nulltopic_message;	     
    DwtCompString	nulllib_message;	     
    DwtCompString	notitle_message;	     
    DwtCompString	nokeyword_message;	     
    DwtCompString	erroropen_message;	     
    Widget		avoid_widget[8];	     
    						     
    int			avoid_count;		     
    						     
    char		*visit_context;		     
    char		*help_context;		     

     

    Widget		help_on_help;		     
						     
    Widget		help_on_saveas;		     
						     
    Widget		view_menu;		     
    Widget		file_menu;		     
    Widget		edit_menu;		     
    Widget		search_menu;		     
    Widget		help_menu;		     
    Widget		saveas_button;		     
    Widget		exit_button;		     
    Widget		selectall_button;	     
    Widget		help_button;		     
    Widget		helpglossary_button;	     
    Widget		about_button;		     
    DwtCompString	helpontitle_label;	     
						     
						     
    DwtCompString	helptitle_label;	     
						     
						     
    DwtCompString	goto_topic_label;	     
    DwtCompString	goback_topic_label;	     
    DwtCompString	visit_topic_label;	     
    DwtCompString	quit_label;		     
    DwtCallbackStruct	map_callback;		     
    DwtCompString	message_parameter;	     
    DwtCompString	acknowledge_label;	     
    DwtCompString	helponhelp_title;	     
						     
    Boolean		cache_library;		     
    Cursor		cursor;			     
} DwthelpPart ;

typedef struct {
    CorePart		core ;
    CompositePart	composite ;
    DwtCommonPart	dwtcommon;
    DwthelpPart		dwthelp ;
} DwthelpWidgetRec, *DwthelpWidget ;

 

typedef struct {
    caddr_t		extension;	 
} DwthelpClassPart ;

typedef struct {
    CoreClassPart	core_class ;
    CompositeClassPart	composite_class ;
    DwtCommonClassPart	dwtcommon_class;
    DwthelpClassPart	dwthelp_class ;
} DwthelpClassRec, *DwthelpClass ;


extern  DwthelpClassRec	dwthelpwidgetclassrec ;
extern  DwthelpClass		dwthelpwidgetclass ;



 
 
 

typedef struct {			 
    caddr_t		extension;	 
} AttacheddbClassPart;

typedef struct _AttacheddbClassRec {		 
	CoreClassPart		core_class;
	CompositeClassPart	composite_class;
	ConstraintClassPart	constraint_class;
	DialogClassPart		dialog_class;
	AttacheddbClassPart	attacheddb_class;
} AttacheddbClassRec, *AttacheddbClass;

typedef struct {			 
	Widget		first_child;		 
	XtCallbackList	callback;		 
	int		default_h_offset;	 
	int		default_v_offset;	 
	int		fraction_base;		 
	Boolean		rubber_form;		 
	Boolean		specified;		 
} AttacheddbPart;

typedef struct _AttacheddbRec {		 
	CorePart	core;
	CompositePart	composite;
	ConstraintPart	constraint;
	DialogPart	dialog;
	AttacheddbPart	attacheddb;
} AttacheddbRec, *AttacheddbWidget;

typedef struct _FormAttachmentRec {
	DwtAttachmentType	type;		 
	Widget			w;		 
	int			percent;	 
	int			offset;		 
	int			value;		 
	int			tempValue;	 
} FormAttachmentRec, *FormAttachment;

typedef struct _AttacheddbConstraintPart {
	FormAttachmentRec att[4];		 
	Widget		next_sibling;		 
	Position	font_x, font_y;		 
	Boolean		sorted;			 
	Boolean		resizable;		 
} AttacheddbConstraintPart, *AttacheddbConstraint;

typedef struct _AttacheddbConstraintRec {
	DialogConstraintPart		dialog;
	AttacheddbConstraintPart	attacheddb;
} AttacheddbConstraintRec, *AttacheddbConstraintPtr;


extern  AttacheddbClassRec	attacheddbwidgetclassrec;
extern  WidgetClass		attacheddbwidgetclass;



 



typedef struct 
{
    caddr_t		extension;	 
} 
    SeparatorGadgetClassPart;


typedef struct
{
    ObjectClassPart		object_class;
    SeparatorGadgetClassPart	separator_gadget_class;
} 
    SeparatorGadgetClassRec, *SeparatorGadgetClass;


 



typedef struct
{
    unsigned char	orientation;
}
    SeparatorGadgetPart;



typedef struct
{
    ObjectPart		object;
    RectObjPart		rectangle;
    SeparatorGadgetPart separator_gadget;
}
    SeparatorGadgetRec, *SeparatorGadget;



extern  SeparatorGadgetClassRec       separatorgadgetclassrec;
extern  SeparatorGadgetClass          separatorgadgetclass;



 



typedef struct 
{
    caddr_t		extension;	 
} 
    LabelGadgetClassPart;


typedef struct
{
    ObjectClassPart	 object_class;
    LabelGadgetClassPart label_gadget_class;
} 
    LabelGadgetClassRec, *LabelGadgetClass;



 




typedef struct
{
    DwtCompString 	label;			 
    DwtCompStringArray	label_array;		  
						 
						 

    DwtCallbackStruct   help_callback;

    unsigned char	alignment;

    unsigned char	directionRToL;

    unsigned short	flags;			 
						 
						 
}
    LabelGadgetPart;


typedef struct
{
    ObjectPart	    object;
    RectObjPart	    rectangle;
    LabelGadgetPart label_gadget;
}
    LabelGadgetRec, *LabelGadget;



extern  LabelGadgetClassRec       labelgadgetclassrec;
extern  LabelGadgetClass          labelgadgetclass;



 



typedef struct 
{
    caddr_t		extension;	 
} 
    PushbuttonGadgetClassPart;


typedef struct
{
    ObjectClassPart		object_class;
    LabelGadgetClassPart	label_gadget_class;
    PushbuttonGadgetClassPart	pushbutton_gadget_class;
} 
    PushbuttonGadgetClassRec, *PushbuttonGadgetClass;



 



typedef struct
{
    DwtCompString 	accelerator_text;	 
						 
    DwtCompStringArray  accelerator_array;	  

    char	       *accelerator_lhs;	 
						 
						 

    DwtCallbackStruct   activate_callback;	 
}
    PushbuttonGadgetPart;


typedef struct
{
    ObjectPart		    object;
    RectObjPart		    rectangle;
    LabelGadgetPart	    label_gadget;
    PushbuttonGadgetPart    pushbutton_gadget;
} 
    PushbuttonGadgetRec, *PushbuttonGadget;



extern  PushbuttonGadgetClassRec       pushbuttongadgetclassrec;
extern  PushbuttonGadgetClass          pushbuttongadgetclass;



 



typedef struct 
{
    caddr_t		extension;	 
} 
    TogglebuttonGadgetClassPart;


typedef struct
{
    ObjectClassPart		object_class;
    LabelGadgetClassPart	label_gadget_class;
    TogglebuttonGadgetClassPart	togglebutton_gadget_class;
} 
    TogglebuttonGadgetClassRec, *TogglebuttonGadgetClass;



 



typedef struct
{
    DwtCompString 	accelerator_text;	 
						 
    DwtCompStringArray	accelerator_array;	  

    char	       *accelerator_lhs;	 
						 
						 

    DwtCallbackStruct   value_change_callback;	 

    Boolean		value;			 

    unsigned char 	shape;			 
						 
}
    TogglebuttonGadgetPart;




typedef struct
{
    ObjectPart		    object;
    RectObjPart		    rectangle;
    LabelGadgetPart	    label_gadget;
    TogglebuttonGadgetPart  togglebutton_gadget;
}
    TogglebuttonGadgetRec, *TogglebuttonGadget;



extern  TogglebuttonGadgetClassRec       togglebuttongadgetclassrec;
extern  TogglebuttonGadgetClass          togglebuttongadgetclass;



 



typedef struct 
{
    VoidProc		highlight;		 
						 
						 
						 
						 
    caddr_t		extension;	 
} 
    PulldownGadgetClassPart;


typedef struct
{
    ObjectClassPart		object_class;
    LabelGadgetClassPart	label_gadget_class;
    PulldownGadgetClassPart	pulldown_gadget_class;
} 
    PulldownGadgetClassRec, *PulldownGadgetClass;



 



typedef struct
{
    DwtCallbackStruct	activate_callback,	 
			pulling_callback;	 
						 
						 

    int			hot_widget;		 

    Widget		submenu;		 

    Dimension		hot_width;		 

    Dimension		hot_height;		 

    caddr_t		hot_visual;		 

    char		hot_visual_type;	 

    Pixel		hot_foreground_pixel;    

    Pixel		hot_background_pixel;    
}
    PulldownGadgetPart;




typedef struct
{
    ObjectPart		    object;
    RectObjPart		    rectangle;
    LabelGadgetPart	    label_gadget;
    PulldownGadgetPart	    pulldown_gadget;
}
    PulldownGadgetRec, *PulldownGadget;



extern  PulldownGadgetClassRec       pulldowngadgetclassrec;
extern  PulldownGadgetClass          pulldowngadgetclass;





 



typedef struct
{
    DwtCompString 	mainlabel,	 
			displabel,
			mixlabel,
			redlabel,
			grnlabel,
			blulabel,
			sldlabel,
			vallabel,
			applabel,
			oklabel,
			reslabel,
			canlabel;
    LabelWidget		mainlabelwid,	 
                        displabelwid,
			mixlabelwid, 	
			sldlabelwid,
			vallabelwid,
			redlabelwid,  	
			grnlabelwid,  	
			blulabelwid;  	
    PushbuttonWidget 	apppbwid,  	 
			okpbwid,   	 
			respbwid,   	 
			canpbwid;        
    ScaleWidget		redsclwid,       
			grnsclwid,       
			blusclwid;       
    TextWidget		redtextwid,      
			grntextwid,      
			blutextwid;      
    WindowWidget	origwid,         
    	 		newwid;      	 
    DialogWidget	dispwid,   	 
			mixerwid;     	 
    Widget		curmixerwid,     
			curdispwid,      
			workwid;     	 
    DwtCallbackStruct	okcallback,	 
			applycallback,   
			cancelcallback;  
    XColor  		backcolor,       
			origcolor,       
			newcolor;        
    XtWidgetProc	setnewcolproc;	 
    short		disptype;        
    short		textcols;	 
    Dimension		vieww;		 
    Dimension		viewh;		 
    Dimension		viewm;		 
    Boolean		matchcolors;     
    Boolean		defdisp; 	 
    Boolean		defmixer;	 
    Boolean		allocorigcolor;	 
    Boolean		allocnewcolor;	 
    Boolean		allocbackcolor;	 
    Boolean		hold;		 
} 
    ColorMixPart;

typedef struct 
{
    CorePart	    	core;			 
    CompositePart   	composite;		 
    ConstraintPart	constraint;		 
    DialogPart	    	dialog;			 
    ColorMixPart	colormix;		 
} 
    ColorMixWidgetRec, *ColorMixWidget;


typedef struct 
{
    caddr_t		extension;	 
}
    ColorMixClassPart;


typedef struct _ColorMixClassRec 
{
    CoreClassPart		core_class;
    CompositeClassPart		composite_class;
    ConstraintClassPart		constraint_class;
    DialogClassPart		dialog_class;
    ColorMixClassPart		colormix_class;
} 
    ColorMixClassRec, *ColorMixClass;


extern  ColorMixClassRec  	colormixwidgetclassrec;
extern  ColorMixClass     	colormixwidgetclass;




 





 









# 2930 "GNU_CC_INCLUDE:[000000.decw$include]DwtWidget.h"



# 37 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2

# 1 "GNU_CC_INCLUDE:[000000.decw$include]Xatom.h" 1
 










































































































# 38 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2



# 1 "work2:[jmsynge.p.dmvue]vicon.h" 1
 


































 

extern  WidgetClass 		viconwidgetclass;

 














 






 









 

typedef struct _VIconCBRec {
	int	reason;
	XEvent  *event;
	int	requestDenied;
	Dimension x,y;
} VIconCallbackRec, *VIconCallback;

 

extern Widget	VIconCreate(Widget w, char *name, Arg *args, int argcnt);

extern void	VIconInitializeForDRM();

extern int	CreateIcon(
			DRMHierarchy drmHierarchy,
			Widget parentW,
			char *type,
			char *label,
			Dimension x,
			Dimension y,
			void *userData,
			Widget *iconW,
			Widget *labelW
		);

extern char *	VIconGetUserData(Widget argW);

extern int	VIconHighlightIcon(Widget argW);
extern int	VIconUnhighlightIcon(Widget argW);
extern void	VIconHighlightLabel(Widget argW);
extern void	VIconUnhighlightLabel(Widget argW);

extern void	CenterLabel(Widget argW);


# 41 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2


extern void VtkMainLoop();
}

# 1 "work2:[jmsynge.p.dmvue]dmObjectCl.hxx" 1
 




extern "C" {




# 1 "work2:[jmsynge.p.dmvue]VIcon.h" 1
 































# 108 "work2:[jmsynge.p.dmvue]VIcon.h"

# 11 "work2:[jmsynge.p.dmvue]dmObjectCl.hxx" 2

}

# 1 "work2:[jmsynge.p.dmvue]StringCl.hxx" 1
 

 




# 1 "GNU_GXX_INCLUDE:[000000]stdio.h" 1
 





















 



# 133 "GNU_GXX_INCLUDE:[000000]stdio.h"

# 8 "work2:[jmsynge.p.dmvue]StringCl.hxx" 2

# 1 "GNU_GXX_INCLUDE:[000000]string.h" 1
 





















 



# 59 "GNU_GXX_INCLUDE:[000000]string.h"

# 9 "work2:[jmsynge.p.dmvue]StringCl.hxx" 2


class StringCl {
private:
	char* p;
	int value_length;
	int buf_length;

public:


 
 

	StringCl()			 
	{
	



		p = new char[buf_length = 1];
		*p = '\0';
		value_length = 0;
	}

	StringCl(char *s);		 
	StringCl(StringCl& s);		 

 
 

	~StringCl()
	{
	



		delete p;	 
	}

 
 

	operator char *()	 
	{			 
		return p;
	}

	int
	length()		 
	{
		return value_length;
	}

 
 

	StringCl&
	operator=(StringCl&);		 

	StringCl&
	operator=(char *);		 

	StringCl&
	operator+(StringCl&);		 

 
 

	friend int
	operator==(StringCl, StringCl);

	friend int
	operator==(StringCl, char *);

	friend int
	operator!=(StringCl, StringCl);

	friend int
	operator!=(StringCl, char *);
};

# 14 "work2:[jmsynge.p.dmvue]dmObjectCl.hxx" 2


 

class dmObjectCl {
protected:

 
 
 
 
 

	static dmObjectCl*	first_object;
	static dmObjectCl*	last_object;

	dmObjectCl*	next_object;
	dmObjectCl*	prev_object;

 
 

	void
	InsertAtHead()
	{
		 

		next_object = first_object;
		prev_object = 	0 ;

		if (next_object)
			next_object->prev_object = this;

		first_object = this;
	}

	void
	FixupWidgets();

 
 

public:

	Widget		iconW;
	Widget		labelW;

	StringCl	label_value;

	struct {
		unsigned int editable : 1;
		unsigned int dragable : 1;
		unsigned int active :	1;
 
 
		
	} flags;

 
 

	static dmObjectCl*
	FirstObject()
	{
		return first_object;
	}

	dmObjectCl*
	NextObject()
	{
		return next_object;
	}

	dmObjectCl*
	PrevObject()
	{
		return prev_object;
	}

	static dmObjectCl*
	LastObject()
	{
		return last_object;
	}

 
 

	virtual StringCl*
	ClassName() = 0;

	virtual int
	AcceptArgumentp(dmObjectCl& dropped, VIconCallback cb) = 0;

	virtual void
	LabelChanged() = 0;
};


# 46 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2

# 1 "work2:[jmsynge.p.dmvue]dmFileCl.hxx" 1
 

 




# 1 "work2:[jmsynge.p.dmvue]dmObjectCl.hxx" 1
 

# 112 "work2:[jmsynge.p.dmvue]dmObjectCl.hxx"

# 8 "work2:[jmsynge.p.dmvue]dmFileCl.hxx" 2


class dmFileCl : public dmObjectCl
{
private:
	static StringCl class_name;

protected:
	StringCl	filespec;

public:
	dmFileCl
	(
	  DRMHierarchy drmHierarchy,
	  Widget parentW,
	  char *value,
	  Dimension x,
	  Dimension y
	);

	virtual StringCl *
	ClassName()
	{
		return &class_name;
	}

	virtual int
	AcceptArgumentp(dmObjectCl& dropped, VIconCallback cb);

	virtual void
	LabelChanged();
};


# 47 "work2:[jmsynge.p.dmvue]dmvue.cxx;" 2


static void QuitCallback();
static void PasteCallback();

static DRMRegisterArg reglist[] = {
    {"QuitCallback",		(caddr_t) QuitCallback},
    {"PasteCallback",		(caddr_t) PasteCallback},
};

static char *db_filename_vec[] =	 
  {"dmVue.uid"				 
  };					 

static Widget appW, mainW, dialogW, commandW;

static DRMHierarchy drmHierarchy;      

main(char **argv, int argc)
{
	DRMType class_return;
	int i;

	DwtInitializeDRM();		 
	VIconInitializeForDRM();	 
	DwtRegisterDRMNames(reglist, 	((Cardinal) (sizeof(reglist) / sizeof(reglist[0]))) );

	 

	appW = XtInitialize("dmVue", "dmVue", 	0 , 0, &argc, argv);

	 



 

	 

	if (DwtOpenHierarchy (		((Cardinal) (sizeof(db_filename_vec) / sizeof(db_filename_vec[0]))) ,
				db_filename_vec,
				0,
				&drmHierarchy)
	    != 1 ) {

		printf ("Failure - Can't open %s file", db_filename_vec[0]);
	        exit(0);
	};

	 

	DwtFetchWidget( drmHierarchy,
			"dmVue_main",
			appW,
			&mainW,
			&class_return );

	 

	DwtFetchWidget( drmHierarchy,
			"dmVue_dialog",
			mainW,
			&dialogW,
			&class_return );

	XtManageChild( dialogW );

	 

XSynchronize(((appW)->core.screen->display) , 1 );

 
 

	 

	DwtFetchWidget( drmHierarchy,
			"dmVue_command",
			mainW,
			&commandW,
			&class_return );

	XtManageChild( commandW );

	 

	XtManageChild( mainW );
	XtRealizeWidget( appW );

 

 
	VtkMainLoop();
}

void output_command(char* command)
{
	DwtCommandErrorMessage(commandW, command);
}

static void selectioncallback
(
	Widget w,
	Opaque closure,
	Atom *selection,
	Atom *type,
	Opaque value,
	unsigned long *length,
	int *format
)
{
	int l = *length;
	char *end,*start = (char *)value;
	int x,y,tmp;
	dmFileCl *file;

	 

	do
	{
		 

		if (	0  != (end = strchr(start, '\n')))
			 
			*end = '\000';

		 

		x = rand() % (((tmp = dialogW->core.width) > 10) ? tmp - 10 : tmp);
		y = rand() % (((tmp = dialogW->core.height) > 10) ? tmp - 10 : tmp);

		printf("Creating icon at (%d, %d) for file %s.\n", x, y, start);

		file = new dmFileCl(
			drmHierarchy,
			dialogW,
			start,
			x, y);

		printf("object = %x, iconW = %x, iconW->core.x = %d, iconW->core.y = %d\n",
			file, file->iconW, file->iconW->core.x, file->iconW->core.y);

		start = end + 1;
	}
	while (end != 	0 );

	return;
}

static void PasteCallback(Widget w, Opaque closure, DwtMenuCallbackStruct *cb)
{
	XtGetSelectionValue(
		dialogW,
		((Atom) 1) ,
		((Atom) 31) ,
		selectioncallback,
			0 ,
		cb->event->xbutton.time);

	return;
}

static void QuitCallback()
{
	exit(1);
}