|
|
1.1 ! root 1: /* ! 2: * $Header: VPanePrivate.h,v 1.4 87/09/13 03:11:49 newman Exp $ ! 3: */ ! 4: ! 5: /* ! 6: * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. ! 7: * ! 8: * All Rights Reserved ! 9: * ! 10: * Permission to use, copy, modify, and distribute this software and its ! 11: * documentation for any purpose and without fee is hereby granted, ! 12: * provided that the above copyright notice appear in all copies and that ! 13: * both that copyright notice and this permission notice appear in ! 14: * supporting documentation, and that the name of Digital Equipment ! 15: * Corporation not be used in advertising or publicity pertaining to ! 16: * distribution of the software without specific, written prior permission. ! 17: * ! 18: * ! 19: * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ! 20: * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL ! 21: * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ! 22: * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, ! 23: * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ! 24: * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS ! 25: * SOFTWARE. ! 26: */ ! 27: /* ! 28: * VPanePrivate.h - Private definitions for VPane widget ! 29: * ! 30: * Author: Jeanne M. Rich ! 31: * Digital Equipment Corporation ! 32: * Western Software Laboratory ! 33: * Date: Friday Aug 28 1987 ! 34: */ ! 35: ! 36: #ifndef _XtVPanePrivate_h ! 37: #define _XtVPanePrivate_h ! 38: ! 39: /************************************************************************************ ! 40: * ! 41: * VPane Widget Private Data ! 42: * ! 43: ***********************************************************************************/ ! 44: ! 45: #define BORDERWIDTH 1 /* Size of borders between panes. */ ! 46: /* %%% Should not be a constant */ ! 47: #define DEFAULTKNOBWIDTH 9 ! 48: #define DEFAULTKNOBHEIGHT 9 ! 49: #define DEFAULTKNOBINDENT 16 ! 50: ! 51: ! 52: /* New fields for the VPane widget class record */ ! 53: typedef struct { ! 54: int mumble; ! 55: /* no new procedures */ ! 56: } VPaneClassPart; ! 57: ! 58: /* Full Class record declaration */ ! 59: typedef struct _VPaneClassRec { ! 60: CoreClassPart core_class; ! 61: CompositeClassPart composite_class; ! 62: ConstraintClassPart constraint_class; ! 63: VPaneClassPart v_pane_class; ! 64: } VPaneClassRec; ! 65: ! 66: extern VPaneClassRec vPaneClassRec; ! 67: ! 68: ! 69: /* VPane SubWidget record */ ! 70: typedef struct { ! 71: int position; /* position location in VPane */ ! 72: Position dy; /* Desired Location */ ! 73: Position olddy; /* The last value of dy. */ ! 74: Dimension min; /* Minimum height */ ! 75: Dimension max; /* Maximum height */ ! 76: short autochange; /* Whether we're allowed to change this */ ! 77: /* subwidget's height without an */ ! 78: /* explicit command from the user */ ! 79: Dimension dheight; /* Desired height */ ! 80: Widget knob; /* The knob for this subwidget */ ! 81: } SubWidgetInfo, *SubWidgetPtr; ! 82: ! 83: /* New Fields for the VPane widget record */ ! 84: typedef struct { ! 85: Pixel foreground_pixel; /* window foreground */ ! 86: Dimension knob_width, knob_height; /* Dimension of knobs */ ! 87: Position knob_indent; /* Location of knobs (offset from right */ ! 88: /* margin) */ ! 89: Pixel knob_pixel; /* Color of knobs */ ! 90: Dimension heightused; /* Total height used by subwidgets */ ! 91: SubWidgetInfo *sublist; /* Array of info about subwidgets */ ! 92: int whichtracking; /* Which know we are tracking if any */ ! 93: Position starty; /* Starting y value */ ! 94: int whichdirection; /* Which direction to refigure things in */ ! 95: SubWidgetPtr whichadd; /* Which subwidget to add changes to */ ! 96: SubWidgetPtr whichsub; /* Which subwidget to sub changes from */ ! 97: Boolean refiguremode; /* Whether to refigure changes right now */ ! 98: GC normgc; /* GC to use when redrawing borders */ ! 99: GC invgc; /* GC to use when erasing borders */ ! 100: GC flipgc; /* GC to use when animating borders */ ! 101: } VPanePart; ! 102: ! 103: /********************************************************************************* ! 104: * ! 105: * Full instance record declaration ! 106: * ! 107: ********************************************************************************/ ! 108: ! 109: typedef struct _VPaneRec { ! 110: CorePart core; ! 111: CompositePart composite; ! 112: ConstraintPart contstraint; ! 113: VPanePart v_pane; ! 114: } VPaneRec; ! 115: ! 116: #endif _XtVPanePrivate_h ! 117: /* DON'T ADD STUFF AFTER THIS #endif */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.