428
|
1 /* Implements a lightweight scrollbar widget.
|
|
2 Copyright (C) 1992, 1993, 1994 Lucid, Inc.
|
|
3
|
|
4 This file is part of the Lucid Widget Library.
|
|
5
|
|
6 The Lucid Widget Library is free software; you can redistribute it and/or
|
|
7 modify it under the terms of the GNU General Public License as published by
|
|
8 the Free Software Foundation; either version 2, or (at your option)
|
|
9 any later version.
|
|
10
|
|
11 The Lucid Widget Library is distributed in the hope that it will be useful,
|
|
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
14 GNU General Public License for more details.
|
|
15
|
|
16 You should have received a copy of the GNU General Public License
|
|
17 along with XEmacs; see the file COPYING. If not, write to
|
|
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
19 Boston, MA 02111-1307, USA. */
|
|
20
|
|
21 /* Created by Douglas Keller <dkeller@vnet.ibm.com> */
|
|
22
|
440
|
23 #ifndef INCLUDED_xlwscrollbar_h_
|
|
24 #define INCLUDED_xlwscrollbar_h_
|
428
|
25
|
|
26 #include <X11/Core.h>
|
|
27
|
|
28 /* Motif-compatible resource names */
|
|
29 #ifndef _XmStrDefs_h_
|
|
30
|
|
31 #define XmNbackground "background"
|
|
32 #define XmNbottomShadowColor "bottomShadowColor"
|
|
33 #define XmNbottomShadowPixmap "bottomShadowPixmap"
|
|
34 #define XmNforeground "foreground"
|
|
35 #define XmNincrement "increment"
|
|
36 #define XmNinitialDelay "initialDelay"
|
|
37 #define XmNmaximum "maximum"
|
|
38 #define XmNminimum "minimum"
|
|
39 #define XmNpageIncrement "pageIncrement"
|
|
40 #define XmNrepeatDelay "repeatDelay"
|
|
41 #define XmNshadowThickness "shadowThickness"
|
|
42 #define XmNborderWidth "borderWidth"
|
|
43 #define XmNshowArrows "showArrows"
|
|
44 #define XmNsliderSize "sliderSize"
|
|
45 #define XmNtopShadowColor "topShadowColor"
|
|
46 #define XmNtopShadowPixmap "topShadowPixmap"
|
|
47 #define XmNtroughColor "troughColor"
|
|
48 #define XmNvalue "value"
|
|
49 #define XmNvalueChangedCallback "valueChangedCallback"
|
|
50 #define XmNincrementCallback "incrementCallback"
|
|
51 #define XmNdecrementCallback "decrementCallback"
|
|
52 #define XmNpageIncrementCallback "pageIncrementCallback"
|
|
53 #define XmNpageDecrementCallback "pageDecrementCallback"
|
|
54 #define XmNtoTopCallback "toTopCallback"
|
|
55 #define XmNtoBottomCallback "toBottomCallback"
|
|
56 #define XmNdragCallback "dragCallback"
|
|
57 #define XmNorientation "orientation"
|
|
58
|
|
59 #define XmCBackground "Background"
|
|
60 #define XmCBottomShadowColor "BottomShadowColor"
|
|
61 #define XmCBottomShadowPixmap "BottomShadowPixmap"
|
|
62 #define XmCTopShadowPixmap "TopShadowPixmap"
|
|
63 #define XmCForeground "Foreground"
|
|
64 #define XmCIncrement "Increment"
|
|
65 #define XmCInitialDelay "InitialDelay"
|
|
66 #define XmCMaximum "Maximum"
|
|
67 #define XmCMinimum "Minimum"
|
|
68 #define XmCPageIncrement "PageIncrement"
|
|
69 #define XmCRepeatDelay "RepeatDelay"
|
|
70 #define XmCShadowThickness "ShadowThickness"
|
|
71 #define XmCBorderWidth "BorderWidth"
|
|
72 #define XmCShowArrows "ShowArrows"
|
|
73 #define XmCSliderSize "SliderSize"
|
|
74 #define XmCTopShadowColor "TopShadowColor"
|
|
75 #define XmCTroughColor "TroughColor"
|
|
76 #define XmCValue "Value"
|
|
77 #define XmCValueChangedCallback "ValueChangedCallback"
|
|
78 #define XmCIncrementCallback "IncrementCallback"
|
|
79 #define XmCDecrementCallback "DecrementCallback"
|
|
80 #define XmCPageIncrementCallback "PageIncrementCallback"
|
|
81 #define XmCPageDecrementCallback "PageDecrementCallback"
|
|
82 #define XmCToTopCallback "ToTopCallback"
|
|
83 #define XmCToBottomCallback "ToBottomCallback"
|
|
84 #define XmCDragCallback "DragCallback"
|
|
85 #define XmCOrientation "Orientation"
|
|
86
|
|
87 #endif /* _XmStrDefs_h_ */
|
|
88
|
|
89 /* New resources that Motif does not have.
|
|
90 Maybe we should use a different prefix. */
|
|
91
|
|
92 /* "knob" is obsolete; use "slider" instead. */
|
|
93 #define XmNknobStyle "knobStyle"
|
|
94 #define XmCKnobStyle "KnobStyle"
|
|
95
|
|
96 #define XmNsliderStyle "sliderStyle"
|
|
97 #define XmCSliderStyle "SliderStyle"
|
|
98
|
|
99 #define XmNarrowPosition "arrowPosition"
|
|
100 #define XmCArrowPosition "ArrowPosition"
|
|
101
|
|
102 #ifndef _Xm_h
|
|
103
|
|
104 enum {
|
|
105 XmCR_NONE,
|
|
106 XmCR_VALUE_CHANGED = 2,
|
|
107 XmCR_INCREMENT,
|
|
108 XmCR_DECREMENT,
|
|
109 XmCR_PAGE_INCREMENT,
|
|
110 XmCR_PAGE_DECREMENT,
|
|
111 XmCR_TO_TOP,
|
|
112 XmCR_TO_BOTTOM,
|
|
113 XmCR_DRAG
|
|
114 };
|
|
115
|
|
116 enum {
|
|
117 XmNO_ORIENTATION,
|
|
118 XmVERTICAL,
|
|
119 XmHORIZONTAL
|
|
120 };
|
|
121
|
|
122 #endif /* ! _Xm_h */
|
|
123
|
|
124 extern WidgetClass xlwScrollBarWidgetClass;
|
|
125
|
|
126 typedef struct _XlwScrollBarClassRec *XlwScrollBarWidgetClass;
|
|
127 typedef struct _XlwScrollBarRec *XlwScrollBarWidget;
|
|
128
|
|
129 typedef struct
|
|
130 {
|
|
131 int reason;
|
|
132 XEvent * event;
|
|
133 int value;
|
|
134 int pixel;
|
|
135 } XlwScrollBarCallbackStruct;
|
|
136
|
|
137 void XlwScrollBarGetValues(Widget widget, int *value, int *sliderSize,
|
|
138 int *increment, int *pageIncrement);
|
|
139
|
|
140 void XlwScrollBarSetValues(Widget widget, int value, int sliderSize,
|
|
141 int increment, int pageIncrement, Boolean notify);
|
|
142
|
440
|
143 #endif /* INCLUDED_xlwscrollbar_h_ */
|