/*
This file is part of the FElt finite element analysis package.
Copyright (C) 1993-2000 Jason I. Gobat and Darren C. Atkinson
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/************************************************************************
* File: DrawingP.h *
* *
* Description: This file contains the widget definition for the *
* Drawing widget. *
************************************************************************/
# ifndef _DrawingP_h
# define _DrawingP_h
# include "Drawing.h"
# include "Figure.h"
# include <X11/Xaw/SimpleP.h>
typedef struct {
int empty;
} DrawingClassPart;
typedef struct _DrawingClassRec {
CoreClassPart core_class;
SimpleClassPart simple_class;
DrawingClassPart drawing_class;
} DrawingClassRec;
extern DrawingClassRec drawingClassRec;
typedef struct {
/* resources */
Pixel foreground;
XFontStruct *font;
Widget coord;
Boolean grid;
float gridSize;
Boolean snap;
float snapSize;
float xMin;
float xMax;
float yMin;
float yMax;
float xScale;
float yScale;
XtCallbackList button;
XtCallbackList motion;
Boolean interactive;
Boolean search;
Boolean redraw;
/* private state */
Dimension width;
Dimension height;
Region region;
Region nullRegion;
Region bufferRegion;
GC gridgc;
GC drawgc;
GC intergc;
int xprecision;
int yprecision;
unsigned line_width;
int line_style;
Figure head;
Figure tail;
Pixel fg;
Pixel last_fg;
unsigned last_width;
int last_style;
Font last_font;
Cache color_cache;
CacheData color_data;
Cache font_cache;
CacheData font_data;
} DrawingPart;
typedef struct _DrawingRec {
CorePart core;
SimplePart simple;
DrawingPart drawing;
} DrawingRec;
# endif /* _DrawingP_h */
syntax highlighted by Code2HTML, v. 0.9.1