DEADSOFTWARE

7a157dbded2ce46bdc51d3efc24de971910481ee
[bbcp.git] / Trurl-based / Std / Mod / CFrames.txt
1 MODULE StdCFrames;
3 (* THIS IS TEXT COPY OF BlackBox 1.6-rc6 Std/Mod/CFrames.odc *)
4 (* DO NOT EDIT *)
6 IMPORT Fonts, Ports, Views, Dates, Dialog;
8 CONST lineUp* = 0; lineDown* = 1; pageUp* = 2; pageDown* = 3;
10 TYPE
11 Frame* = POINTER TO ABSTRACT RECORD (Views.Frame)
12 disabled*, undef*, readOnly*, noRedraw*: BOOLEAN;
13 font*: Fonts.Font
14 END;
16 PushButton* = POINTER TO ABSTRACT RECORD (Frame)
17 label*: ARRAY 256 OF CHAR;
18 default*, cancel*: BOOLEAN;
19 Do*: PROCEDURE (f: PushButton)
20 END;
22 CheckBox* = POINTER TO ABSTRACT RECORD (Frame)
23 label*: ARRAY 256 OF CHAR;
24 Get*: PROCEDURE (f: CheckBox; OUT on: BOOLEAN);
25 Set*: PROCEDURE (f: CheckBox; on: BOOLEAN)
26 END;
28 RadioButton* = POINTER TO ABSTRACT RECORD (Frame)
29 label*: ARRAY 256 OF CHAR;
30 Get*: PROCEDURE (f: RadioButton; OUT on: BOOLEAN);
31 Set*: PROCEDURE (f: RadioButton; on: BOOLEAN)
32 END;
34 ScrollBar* = POINTER TO ABSTRACT RECORD (Frame)
35 Track*: PROCEDURE (f: ScrollBar; dir: INTEGER; VAR pos: INTEGER);
36 Get*: PROCEDURE (f: ScrollBar; OUT size, sect, pos: INTEGER);
37 Set*: PROCEDURE (f: ScrollBar; pos: INTEGER)
38 END;
40 Field* = POINTER TO ABSTRACT RECORD (Frame)
41 maxLen*: INTEGER; (* max num of characters in field (w/o 0X) *)
42 left*, right*, multiLine*, password*: BOOLEAN;
43 Get*: PROCEDURE (f: Field; OUT string: ARRAY OF CHAR);
44 Set*: PROCEDURE (f: Field; IN string: ARRAY OF CHAR);
45 Equal*: PROCEDURE (f: Field; IN s1, s2: ARRAY OF CHAR): BOOLEAN
46 END;
48 UpDownField* = POINTER TO ABSTRACT RECORD (Frame)
49 min*, max*, inc*: INTEGER;
50 Get*: PROCEDURE (f: UpDownField; OUT val: INTEGER);
51 Set*: PROCEDURE (f: UpDownField; val: INTEGER)
52 END;
54 DateField* = POINTER TO ABSTRACT RECORD (Frame)
55 Get*: PROCEDURE (f: DateField; OUT date: Dates.Date);
56 Set*: PROCEDURE (f: DateField; IN date: Dates.Date);
57 GetSel*: PROCEDURE (f: DateField; OUT sel: INTEGER);
58 SetSel*: PROCEDURE (f: DateField; sel: INTEGER)
59 END;
61 TimeField* = POINTER TO ABSTRACT RECORD (Frame)
62 Get*: PROCEDURE (f: TimeField; OUT date: Dates.Time);
63 Set*: PROCEDURE (f: TimeField; IN date: Dates.Time);
64 GetSel*: PROCEDURE (f: TimeField; OUT sel: INTEGER);
65 SetSel*: PROCEDURE (f: TimeField; sel: INTEGER)
66 END;
68 ColorField* = POINTER TO ABSTRACT RECORD (Frame)
69 Get*: PROCEDURE (f: ColorField; OUT col: INTEGER);
70 Set*: PROCEDURE (f: ColorField; col: INTEGER)
71 END;
73 ListBox* = POINTER TO ABSTRACT RECORD (Frame)
74 sorted*: BOOLEAN;
75 Get*: PROCEDURE (f: ListBox; OUT i: INTEGER);
76 Set*: PROCEDURE (f: ListBox; i: INTEGER);
77 GetName*: PROCEDURE (f: ListBox; i: INTEGER; VAR name: ARRAY OF CHAR)
78 END;
80 SelectionBox* = POINTER TO ABSTRACT RECORD (Frame)
81 sorted*: BOOLEAN;
82 Get*: PROCEDURE (f: SelectionBox; i: INTEGER; OUT in: BOOLEAN);
83 Incl*: PROCEDURE (f: SelectionBox; from, to: INTEGER);
84 Excl*: PROCEDURE (f: SelectionBox; from, to: INTEGER);
85 Set*: PROCEDURE (f: SelectionBox; from, to: INTEGER);
86 GetName*: PROCEDURE (f: SelectionBox; i: INTEGER; VAR name: ARRAY OF CHAR)
87 END;
89 ComboBox* = POINTER TO ABSTRACT RECORD (Frame)
90 sorted*: BOOLEAN;
91 Get*: PROCEDURE (f: ComboBox; OUT string: ARRAY OF CHAR);
92 Set*: PROCEDURE (f: ComboBox; IN string: ARRAY OF CHAR);
93 GetName*: PROCEDURE (f: ComboBox; i: INTEGER; VAR name: ARRAY OF CHAR)
94 END;
96 Caption* = POINTER TO ABSTRACT RECORD (Frame)
97 label*: ARRAY 256 OF CHAR;
98 left*, right*: BOOLEAN;
99 END;
101 Group* = POINTER TO ABSTRACT RECORD (Frame)
102 label*: ARRAY 256 OF CHAR
103 END;
105 TreeFrame* = POINTER TO ABSTRACT RECORD (Frame)
106 sorted*, haslines*, hasbuttons*, atroot*, foldericons*: BOOLEAN;
107 NofNodes*: PROCEDURE (f: TreeFrame): INTEGER;
108 Child*: PROCEDURE (f: TreeFrame; node: Dialog.TreeNode): Dialog.TreeNode;
109 Parent*: PROCEDURE (f: TreeFrame; node: Dialog.TreeNode): Dialog.TreeNode;
110 Next*: PROCEDURE (f: TreeFrame; node: Dialog.TreeNode): Dialog.TreeNode;
111 Select*: PROCEDURE (f: TreeFrame; node: Dialog.TreeNode);
112 Selected*: PROCEDURE (f: TreeFrame): Dialog.TreeNode;
113 SetExpansion*: PROCEDURE (f: TreeFrame; tn: Dialog.TreeNode; expanded: BOOLEAN)
114 END;
116 Directory* = POINTER TO ABSTRACT RECORD END;
119 VAR
120 setFocus*: BOOLEAN;
121 defaultFont*, defaultLightFont*: Fonts.Font;
122 dir-, stdDir-: Directory;
125 (** Frame **)
128 PROCEDURE (f: Frame) MouseDown* (x, y: INTEGER; buttons: SET), NEW, EMPTY;
129 PROCEDURE (f: Frame) WheelMove* (x, y: INTEGER; op, nofLines: INTEGER;
130 VAR done: BOOLEAN), NEW, EMPTY;
131 PROCEDURE (f: Frame) KeyDown* (ch: CHAR), NEW, EMPTY;
132 PROCEDURE (f: Frame) Restore* (l, t, r, b: INTEGER), NEW, ABSTRACT;
133 PROCEDURE (f: Frame) UpdateList*, NEW, EMPTY;
134 PROCEDURE (f: Frame) Mark* (on, focus: BOOLEAN), NEW, EMPTY;
135 PROCEDURE (f: Frame) Edit* (op: INTEGER; VAR v: Views.View; VAR w, h: INTEGER;
136 VAR singleton, clipboard: BOOLEAN), NEW, EMPTY;
137 PROCEDURE (f: Frame) GetCursor* (x, y: INTEGER; modifiers: SET; VAR cursor: INTEGER), NEW, EMPTY;
139 PROCEDURE (f: Frame) Update*, NEW, EXTENSIBLE;
140 VAR l, t, r, b: INTEGER; root: Views.RootFrame;
141 BEGIN
142 l := f.l + f.gx; t := f.t + f.gy; r := f.r + f.gx; b := f.b + f.gy;
143 root := Views.RootOf(f);
144 Views.UpdateRoot(root, l, t, r, b, Views.keepFrames);
145 Views.ValidateRoot(root)
146 END Update;
148 PROCEDURE (f: Frame) DblClickOk* (x, y: INTEGER): BOOLEAN, NEW, EXTENSIBLE;
149 BEGIN
150 RETURN TRUE
151 END DblClickOk;
154 (** Field **)
156 PROCEDURE (f: Field) Idle* (), NEW, ABSTRACT;
157 PROCEDURE (f: Field) Select* (from, to: INTEGER), NEW, ABSTRACT;
158 PROCEDURE (f: Field) GetSelection* (OUT from, to: INTEGER), NEW, ABSTRACT;
159 PROCEDURE (f: Field) Length* (): INTEGER, NEW, ABSTRACT;
161 PROCEDURE (f: Field) GetCursor* (x, y: INTEGER; modifiers: SET; VAR cursor: INTEGER), EXTENSIBLE;
162 BEGIN
163 cursor := Ports.textCursor
164 END GetCursor;
167 (** UpDownField **)
169 PROCEDURE (f: UpDownField) Idle*, NEW, ABSTRACT;
170 PROCEDURE (f: UpDownField) Select* (from, to: INTEGER), NEW, ABSTRACT;
171 PROCEDURE (f: UpDownField) GetSelection* (OUT from, to: INTEGER), NEW, ABSTRACT;
173 PROCEDURE (f: UpDownField) GetCursor* (x, y: INTEGER; modifiers: SET;
174 VAR cursor: INTEGER), EXTENSIBLE;
175 BEGIN
176 cursor := Ports.textCursor
177 END GetCursor;
180 (** SelectionBox **)
182 PROCEDURE (f: SelectionBox) Select* (from, to: INTEGER), NEW, ABSTRACT;
183 PROCEDURE (f: SelectionBox) GetSelection* (OUT from, to: INTEGER), NEW, ABSTRACT;
185 PROCEDURE (f: SelectionBox) UpdateRange* (op, from, to: INTEGER), NEW, EXTENSIBLE;
186 BEGIN
187 f.Update
188 END UpdateRange;
191 (** ComboBox **)
193 PROCEDURE (f: ComboBox) Idle* (), NEW, ABSTRACT;
194 PROCEDURE (f: ComboBox) Select* (from, to: INTEGER), NEW, ABSTRACT;
195 PROCEDURE (f: ComboBox) GetSelection* (OUT from, to: INTEGER), NEW, ABSTRACT;
196 PROCEDURE (f: ComboBox) Length* (): INTEGER, NEW, ABSTRACT;
198 (* TreeFrame **)
199 PROCEDURE (f: TreeFrame) GetSize* (OUT w, h: INTEGER), NEW, ABSTRACT;
201 (** Directory **)
203 PROCEDURE (d: Directory) GetPushButtonSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
204 PROCEDURE (d: Directory) GetCheckBoxSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
205 PROCEDURE (d: Directory) GetRadioButtonSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
206 PROCEDURE (d: Directory) GetScrollBarSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
207 PROCEDURE (d: Directory) GetFieldSize* (max: INTEGER; VAR w, h: INTEGER), NEW, ABSTRACT;
208 PROCEDURE (d: Directory) GetUpDownFieldSize* (max: INTEGER; VAR w, h: INTEGER), NEW, ABSTRACT;
209 PROCEDURE (d: Directory) GetDateFieldSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
210 PROCEDURE (d: Directory) GetTimeFieldSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
211 PROCEDURE (d: Directory) GetColorFieldSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
212 PROCEDURE (d: Directory) GetListBoxSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
213 PROCEDURE (d: Directory) GetSelectionBoxSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
214 PROCEDURE (d: Directory) GetComboBoxSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
215 PROCEDURE (d: Directory) GetCaptionSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
216 PROCEDURE (d: Directory) GetGroupSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
217 PROCEDURE (d: Directory) GetTreeFrameSize* (VAR w, h: INTEGER), NEW, ABSTRACT;
218 PROCEDURE (d: Directory) NewPushButton* (): PushButton, NEW, ABSTRACT;
219 PROCEDURE (d: Directory) NewCheckBox* (): CheckBox, NEW, ABSTRACT;
220 PROCEDURE (d: Directory) NewRadioButton* (): RadioButton, NEW, ABSTRACT;
221 PROCEDURE (d: Directory) NewScrollBar* (): ScrollBar, NEW, ABSTRACT;
222 PROCEDURE (d: Directory) NewField* (): Field, NEW, ABSTRACT;
223 PROCEDURE (d: Directory) NewUpDownField* (): UpDownField, NEW, ABSTRACT;
224 PROCEDURE (d: Directory) NewDateField* (): DateField, NEW, ABSTRACT;
225 PROCEDURE (d: Directory) NewTimeField* (): TimeField, NEW, ABSTRACT;
226 PROCEDURE (d: Directory) NewColorField* (): ColorField, NEW, ABSTRACT;
227 PROCEDURE (d: Directory) NewListBox* (): ListBox, NEW, ABSTRACT;
228 PROCEDURE (d: Directory) NewSelectionBox* (): SelectionBox, NEW, ABSTRACT;
229 PROCEDURE (d: Directory) NewComboBox* (): ComboBox, NEW, ABSTRACT;
230 PROCEDURE (d: Directory) NewCaption* (): Caption, NEW, ABSTRACT;
231 PROCEDURE (d: Directory) NewGroup* (): Group, NEW, ABSTRACT;
232 PROCEDURE (d: Directory) NewTreeFrame* (): TreeFrame, NEW, ABSTRACT;
235 PROCEDURE SetDir* (d: Directory);
236 BEGIN
237 ASSERT(d # NIL, 20); dir := d;
238 IF stdDir = NIL THEN stdDir := d END
239 END SetDir;
241 BEGIN
242 setFocus := FALSE
243 END StdCFrames.