resin 0.2.2 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- data/amber/css/amber-normalize.css +73 -73
- data/amber/css/amber-normalize.less +1 -1
- data/amber/css/amber.css +106 -106
- data/amber/css/helios.css +242 -0
- data/amber/images/hsplitter.png +0 -0
- data/amber/images/vsplitter.png +0 -0
- data/amber/js/Benchfib.deploy.js +116 -38
- data/amber/js/Benchfib.js +120 -42
- data/amber/js/Canvas.deploy.js +674 -403
- data/amber/js/Canvas.js +682 -411
- data/amber/js/Compiler-AST.deploy.js +1150 -0
- data/amber/js/Compiler-AST.js +1591 -0
- data/amber/js/Compiler-Core.deploy.js +1562 -0
- data/amber/js/Compiler-Core.js +1972 -0
- data/amber/js/Compiler-Exceptions.deploy.js +114 -0
- data/amber/js/Compiler-Exceptions.js +161 -0
- data/amber/js/Compiler-IR.deploy.js +2326 -0
- data/amber/js/Compiler-IR.js +3146 -0
- data/amber/js/Compiler-Inlining.deploy.js +1147 -0
- data/amber/js/Compiler-Inlining.js +1514 -0
- data/amber/js/Compiler-Semantic.deploy.js +1207 -0
- data/amber/js/Compiler-Semantic.js +1628 -0
- data/amber/js/Compiler-Tests.deploy.js +646 -60
- data/amber/js/Compiler-Tests.js +843 -82
- data/amber/js/Compiler.deploy.js +1097 -159
- data/amber/js/Compiler.js +1414 -161
- data/amber/js/Examples.deploy.js +31 -15
- data/amber/js/Examples.js +33 -17
- data/amber/js/Helios-Announcements.deploy.js +127 -0
- data/amber/js/Helios-Announcements.js +157 -0
- data/amber/js/Helios-Browser.deploy.js +1473 -0
- data/amber/js/Helios-Browser.js +1953 -0
- data/amber/js/Helios-Commands.deploy.js +403 -0
- data/amber/js/Helios-Commands.js +563 -0
- data/amber/js/Helios-Core.deploy.js +1070 -0
- data/amber/js/Helios-Core.js +1445 -0
- data/amber/js/Helios-Environments.deploy.js +132 -0
- data/amber/js/Helios-Environments.js +179 -0
- data/amber/js/Helios-Inspector.deploy.js +855 -0
- data/amber/js/Helios-Inspector.js +1155 -0
- data/amber/js/Helios-KeyBindings.deploy.js +753 -0
- data/amber/js/Helios-KeyBindings.js +1023 -0
- data/amber/js/Helios-Layout.deploy.js +383 -0
- data/amber/js/Helios-Layout.js +523 -0
- data/amber/js/Helios-Workspace.deploy.js +799 -0
- data/amber/js/Helios-Workspace.js +1074 -0
- data/amber/js/IDE.deploy.js +2541 -1490
- data/amber/js/IDE.js +2721 -1660
- data/amber/js/Importer-Exporter.deploy.js +671 -0
- data/amber/js/Importer-Exporter.js +816 -0
- data/amber/js/Kernel-Announcements.deploy.js +137 -20
- data/amber/js/Kernel-Announcements.js +176 -22
- data/amber/js/Kernel-Classes.deploy.js +555 -168
- data/amber/js/Kernel-Classes.js +662 -205
- data/amber/js/Kernel-Collections.deploy.js +1403 -618
- data/amber/js/Kernel-Collections.js +1545 -690
- data/amber/js/Kernel-Exceptions.deploy.js +109 -45
- data/amber/js/Kernel-Exceptions.js +123 -49
- data/amber/js/Kernel-Methods.deploy.js +196 -81
- data/amber/js/Kernel-Methods.js +214 -89
- data/amber/js/Kernel-Objects.deploy.js +1542 -1117
- data/amber/js/Kernel-Objects.js +1593 -1148
- data/amber/js/Kernel-Tests.deploy.js +1725 -772
- data/amber/js/Kernel-Tests.js +2301 -1123
- data/amber/js/Kernel-Transcript.deploy.js +23 -25
- data/amber/js/Kernel-Transcript.js +24 -26
- data/amber/js/SUnit.deploy.js +204 -131
- data/amber/js/SUnit.js +222 -139
- data/amber/js/Spaces.deploy.js +240 -0
- data/amber/js/Spaces.js +326 -0
- data/amber/js/amber.js +26 -7
- data/amber/js/boot.js +65 -47
- data/amber/js/init.js +1 -1
- data/amber/js/lib/CodeMirror/amber.css +21 -21
- data/amber/js/lib/CodeMirror/codemirror.css +119 -13
- data/amber/js/lib/CodeMirror/codemirror.js +2219 -1220
- data/amber/js/lib/CodeMirror/smalltalk.js +134 -129
- data/amber/js/lib/bootstrap/css/bootstrap.css +5837 -0
- data/amber/js/lib/bootstrap/css/bootstrap.min.css +841 -0
- data/amber/js/lib/bootstrap/img/glyphicons-halflings-white.png +0 -0
- data/amber/js/lib/bootstrap/img/glyphicons-halflings.png +0 -0
- data/amber/js/lib/bootstrap/js/bootstrap.js +2038 -0
- data/amber/js/lib/bootstrap/js/bootstrap.min.js +7 -0
- data/amber/js/lib/jQuery/jquery-1.8.2.min.js +2 -0
- data/amber/js/lib/jQuery/jquery-ui-1.8.24.custom.min.js +125 -0
- data/amber/st/Compiler-AST.st +505 -0
- data/amber/st/Compiler-Core.st +835 -0
- data/amber/st/Compiler-Exceptions.st +87 -0
- data/amber/st/Compiler-IR.st +1097 -0
- data/amber/st/Compiler-Inlining.st +650 -0
- data/amber/st/Compiler-Semantic.st +558 -0
- data/amber/st/Compiler-Tests.st +285 -381
- data/amber/st/Compiler.st +725 -2
- data/amber/st/Helios-Announcements.st +104 -0
- data/amber/st/Helios-Browser.st +708 -0
- data/amber/st/Helios-Commands.st +223 -0
- data/amber/st/Helios-Core.st +532 -0
- data/amber/st/Helios-Environments.st +98 -0
- data/amber/st/Helios-Inspector.st +367 -0
- data/amber/st/Helios-KeyBindings.st +337 -0
- data/amber/st/Helios-Layout.st +199 -0
- data/amber/st/Helios-Workspace.st +367 -0
- data/amber/st/IDE.st +75 -53
- data/amber/st/Importer-Exporter.st +386 -0
- data/amber/st/Kernel-Announcements.st +92 -0
- data/amber/st/Kernel-Classes.st +137 -15
- data/amber/st/Kernel-Collections.st +137 -47
- data/amber/st/Kernel-Exceptions.st +14 -0
- data/amber/st/Kernel-Methods.st +9 -1
- data/amber/st/Kernel-Objects.st +29 -5
- data/amber/st/Kernel-Tests.st +545 -199
- data/amber/st/SUnit.st +10 -0
- data/amber/st/Spaces.st +142 -0
- data/lib/resin/app.rb +1 -1
- metadata +86 -31
- data/amber/js/lib/jQuery/jquery-1.4.4.min.js +0 -167
- data/amber/js/lib/jQuery/jquery-1.6.4.min.js +0 -4
@@ -0,0 +1,383 @@
|
|
1
|
+
smalltalk.addPackage('Helios-Layout', {});
|
2
|
+
smalltalk.addClass('HLContainer', smalltalk.Widget, ['splitter'], 'Helios-Layout');
|
3
|
+
smalltalk.addMethod(
|
4
|
+
"_renderOn_",
|
5
|
+
smalltalk.method({
|
6
|
+
selector: "renderOn:",
|
7
|
+
fn: function (html) {
|
8
|
+
var self = this;
|
9
|
+
var $1, $2;
|
10
|
+
$1 = smalltalk.send(html, "_div", []);
|
11
|
+
smalltalk.send($1, "_id_", ["container"]);
|
12
|
+
$2 = smalltalk.send($1, "_with_", [smalltalk.send(self, "_splitter", [])]);
|
13
|
+
smalltalk.send(smalltalk.send(window, "_jQuery_", [window]), "_bind_do_", ["resize", function () {return smalltalk.send(smalltalk.send(self, "_splitter", []), "_resize", []);}]);
|
14
|
+
return self;
|
15
|
+
}
|
16
|
+
}),
|
17
|
+
smalltalk.HLContainer);
|
18
|
+
|
19
|
+
smalltalk.addMethod(
|
20
|
+
"_splitter",
|
21
|
+
smalltalk.method({
|
22
|
+
selector: "splitter",
|
23
|
+
fn: function () {
|
24
|
+
var self = this;
|
25
|
+
return self['@splitter'];
|
26
|
+
}
|
27
|
+
}),
|
28
|
+
smalltalk.HLContainer);
|
29
|
+
|
30
|
+
smalltalk.addMethod(
|
31
|
+
"_splitter_",
|
32
|
+
smalltalk.method({
|
33
|
+
selector: "splitter:",
|
34
|
+
fn: function (aSplitter) {
|
35
|
+
var self = this;
|
36
|
+
self['@splitter'] = aSplitter;
|
37
|
+
return self;
|
38
|
+
}
|
39
|
+
}),
|
40
|
+
smalltalk.HLContainer);
|
41
|
+
|
42
|
+
|
43
|
+
smalltalk.addMethod(
|
44
|
+
"_with_",
|
45
|
+
smalltalk.method({
|
46
|
+
selector: "with:",
|
47
|
+
fn: function (aSplitter) {
|
48
|
+
var self = this;
|
49
|
+
var $2, $3, $1;
|
50
|
+
$2 = smalltalk.send(self, "_new", []);
|
51
|
+
smalltalk.send($2, "_splitter_", [aSplitter]);
|
52
|
+
$3 = smalltalk.send($2, "_yourself", []);
|
53
|
+
$1 = $3;
|
54
|
+
return $1;
|
55
|
+
}
|
56
|
+
}),
|
57
|
+
smalltalk.HLContainer.klass);
|
58
|
+
|
59
|
+
|
60
|
+
smalltalk.addClass('HLSplitter', smalltalk.Widget, ['firstWidget', 'secondWidget', 'firstPane', 'secondPane', 'splitter'], 'Helios-Layout');
|
61
|
+
smalltalk.addMethod(
|
62
|
+
"_cssClass",
|
63
|
+
smalltalk.method({
|
64
|
+
selector: "cssClass",
|
65
|
+
fn: function () {
|
66
|
+
var self = this;
|
67
|
+
return "splitter";
|
68
|
+
}
|
69
|
+
}),
|
70
|
+
smalltalk.HLSplitter);
|
71
|
+
|
72
|
+
smalltalk.addMethod(
|
73
|
+
"_firstWidget",
|
74
|
+
smalltalk.method({
|
75
|
+
selector: "firstWidget",
|
76
|
+
fn: function () {
|
77
|
+
var self = this;
|
78
|
+
return self['@firstWidget'];
|
79
|
+
}
|
80
|
+
}),
|
81
|
+
smalltalk.HLSplitter);
|
82
|
+
|
83
|
+
smalltalk.addMethod(
|
84
|
+
"_firstWidget_",
|
85
|
+
smalltalk.method({
|
86
|
+
selector: "firstWidget:",
|
87
|
+
fn: function (aWidget) {
|
88
|
+
var self = this;
|
89
|
+
self['@firstWidget'] = aWidget;
|
90
|
+
return self;
|
91
|
+
}
|
92
|
+
}),
|
93
|
+
smalltalk.HLSplitter);
|
94
|
+
|
95
|
+
smalltalk.addMethod(
|
96
|
+
"_isHeliosSplitter",
|
97
|
+
smalltalk.method({
|
98
|
+
selector: "isHeliosSplitter",
|
99
|
+
fn: function () {
|
100
|
+
var self = this;
|
101
|
+
return true;
|
102
|
+
}
|
103
|
+
}),
|
104
|
+
smalltalk.HLSplitter);
|
105
|
+
|
106
|
+
smalltalk.addMethod(
|
107
|
+
"_panesCssClass",
|
108
|
+
smalltalk.method({
|
109
|
+
selector: "panesCssClass",
|
110
|
+
fn: function () {
|
111
|
+
var self = this;
|
112
|
+
return "panes";
|
113
|
+
}
|
114
|
+
}),
|
115
|
+
smalltalk.HLSplitter);
|
116
|
+
|
117
|
+
smalltalk.addMethod(
|
118
|
+
"_renderOn_",
|
119
|
+
smalltalk.method({
|
120
|
+
selector: "renderOn:",
|
121
|
+
fn: function (html) {
|
122
|
+
var self = this;
|
123
|
+
var $1, $3, $4, $5, $6, $2, $7;
|
124
|
+
$1 = smalltalk.send(html, "_div", []);
|
125
|
+
smalltalk.send($1, "_class_", [smalltalk.send(self, "_panesCssClass", [])]);
|
126
|
+
$2 = smalltalk.send($1, "_with_", [function () {$3 = smalltalk.send(html, "_div", []);smalltalk.send($3, "_class_", ["pane"]);$4 = smalltalk.send($3, "_with_", [smalltalk.send(self, "_firstWidget", [])]);self['@firstPane'] = $4;self['@firstPane'];self['@splitter'] = smalltalk.send(smalltalk.send(html, "_div", []), "_class_", [smalltalk.send(self, "_cssClass", [])]);self['@splitter'];$5 = smalltalk.send(html, "_div", []);smalltalk.send($5, "_class_", ["pane"]);$6 = smalltalk.send($5, "_with_", [smalltalk.send(self, "_secondWidget", [])]);self['@secondPane'] = $6;return self['@secondPane'];}]);
|
127
|
+
smalltalk.send(self, "_setupSplitter", []);
|
128
|
+
$7 = smalltalk.send(self, "_resize", []);
|
129
|
+
return self;
|
130
|
+
}
|
131
|
+
}),
|
132
|
+
smalltalk.HLSplitter);
|
133
|
+
|
134
|
+
smalltalk.addMethod(
|
135
|
+
"_resize",
|
136
|
+
smalltalk.method({
|
137
|
+
selector: "resize",
|
138
|
+
fn: function () {
|
139
|
+
var self = this;
|
140
|
+
var $1, $2;
|
141
|
+
$1 = smalltalk.send(smalltalk.send(self, "_firstWidget", []), "_isHeliosSplitter", []);
|
142
|
+
if (smalltalk.assert($1)) {
|
143
|
+
smalltalk.send(smalltalk.send(self, "_firstWidget", []), "_resize", []);
|
144
|
+
}
|
145
|
+
$2 = smalltalk.send(smalltalk.send(self, "_secondWidget", []), "_isHeliosSplitter", []);
|
146
|
+
if (smalltalk.assert($2)) {
|
147
|
+
smalltalk.send(smalltalk.send(self, "_secondWidget", []), "_resize", []);
|
148
|
+
}
|
149
|
+
return self;
|
150
|
+
}
|
151
|
+
}),
|
152
|
+
smalltalk.HLSplitter);
|
153
|
+
|
154
|
+
smalltalk.addMethod(
|
155
|
+
"_secondWidget",
|
156
|
+
smalltalk.method({
|
157
|
+
selector: "secondWidget",
|
158
|
+
fn: function () {
|
159
|
+
var self = this;
|
160
|
+
return self['@secondWidget'];
|
161
|
+
}
|
162
|
+
}),
|
163
|
+
smalltalk.HLSplitter);
|
164
|
+
|
165
|
+
smalltalk.addMethod(
|
166
|
+
"_secondWidget_",
|
167
|
+
smalltalk.method({
|
168
|
+
selector: "secondWidget:",
|
169
|
+
fn: function (aWidget) {
|
170
|
+
var self = this;
|
171
|
+
self['@secondWidget'] = aWidget;
|
172
|
+
return self;
|
173
|
+
}
|
174
|
+
}),
|
175
|
+
smalltalk.HLSplitter);
|
176
|
+
|
177
|
+
smalltalk.addMethod(
|
178
|
+
"_setupSplitter",
|
179
|
+
smalltalk.method({
|
180
|
+
selector: "setupSplitter",
|
181
|
+
fn: function () {
|
182
|
+
var self = this;
|
183
|
+
return self;
|
184
|
+
}
|
185
|
+
}),
|
186
|
+
smalltalk.HLSplitter);
|
187
|
+
|
188
|
+
|
189
|
+
smalltalk.addMethod(
|
190
|
+
"_with_with_",
|
191
|
+
smalltalk.method({
|
192
|
+
selector: "with:with:",
|
193
|
+
fn: function (aWidget, anotherWidget) {
|
194
|
+
var self = this;
|
195
|
+
var $2, $3, $1;
|
196
|
+
$2 = smalltalk.send(self, "_new", []);
|
197
|
+
smalltalk.send($2, "_firstWidget_", [aWidget]);
|
198
|
+
smalltalk.send($2, "_secondWidget_", [anotherWidget]);
|
199
|
+
$3 = smalltalk.send($2, "_yourself", []);
|
200
|
+
$1 = $3;
|
201
|
+
return $1;
|
202
|
+
}
|
203
|
+
}),
|
204
|
+
smalltalk.HLSplitter.klass);
|
205
|
+
|
206
|
+
|
207
|
+
smalltalk.addClass('HLHorizontalSplitter', smalltalk.HLSplitter, [], 'Helios-Layout');
|
208
|
+
smalltalk.addMethod(
|
209
|
+
"_cssClass",
|
210
|
+
smalltalk.method({
|
211
|
+
selector: "cssClass",
|
212
|
+
fn: function () {
|
213
|
+
var self = this;
|
214
|
+
var $1;
|
215
|
+
$1 = smalltalk.send(smalltalk.send(self, "_cssClass", [], smalltalk.HLSplitter), "__comma", [" horizontal"]);
|
216
|
+
return $1;
|
217
|
+
}
|
218
|
+
}),
|
219
|
+
smalltalk.HLHorizontalSplitter);
|
220
|
+
|
221
|
+
smalltalk.addMethod(
|
222
|
+
"_panesCssClass",
|
223
|
+
smalltalk.method({
|
224
|
+
selector: "panesCssClass",
|
225
|
+
fn: function () {
|
226
|
+
var self = this;
|
227
|
+
var $1;
|
228
|
+
$1 = smalltalk.send(smalltalk.send(self, "_panesCssClass", [], smalltalk.HLSplitter), "__comma", [" horizontal"]);
|
229
|
+
return $1;
|
230
|
+
}
|
231
|
+
}),
|
232
|
+
smalltalk.HLHorizontalSplitter);
|
233
|
+
|
234
|
+
smalltalk.addMethod(
|
235
|
+
"_resize",
|
236
|
+
smalltalk.method({
|
237
|
+
selector: "resize",
|
238
|
+
fn: function () {
|
239
|
+
var self = this;
|
240
|
+
smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_offset", []), "_top", [])]);
|
241
|
+
return self;
|
242
|
+
}
|
243
|
+
}),
|
244
|
+
smalltalk.HLHorizontalSplitter);
|
245
|
+
|
246
|
+
smalltalk.addMethod(
|
247
|
+
"_resize_",
|
248
|
+
smalltalk.method({
|
249
|
+
selector: "resize:",
|
250
|
+
fn: function (anInteger) {
|
251
|
+
var self = this;
|
252
|
+
var container;
|
253
|
+
var position;
|
254
|
+
container = smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_parent", []);
|
255
|
+
position = smalltalk.send(anInteger, "__minus", [smalltalk.send(smalltalk.send(container, "_offset", []), "_top", [])]);
|
256
|
+
smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_height_", [smalltalk.send(smalltalk.send(position, "_min_", [smalltalk.send(smalltalk.send(container, "_height", []), "__minus", [100])]), "_max_", [100])]);
|
257
|
+
smalltalk.send(smalltalk.send(self['@secondPane'], "_asJQuery", []), "_height_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(container, "_height", []), "__minus", [position]), "_min_", [smalltalk.send(smalltalk.send(container, "_height", []), "__minus", [100])]), "_max_", [100]), "__minus", [6])]);
|
258
|
+
smalltalk.send(self, "_resize", [], smalltalk.HLSplitter);
|
259
|
+
return self;
|
260
|
+
}
|
261
|
+
}),
|
262
|
+
smalltalk.HLHorizontalSplitter);
|
263
|
+
|
264
|
+
smalltalk.addMethod(
|
265
|
+
"_setupSplitter",
|
266
|
+
smalltalk.method({
|
267
|
+
selector: "setupSplitter",
|
268
|
+
fn: function () {
|
269
|
+
var self = this;
|
270
|
+
smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_draggable_", [smalltalk.HashedCollection._fromPairs_([smalltalk.send("axis", "__minus_gt", ["y"]), smalltalk.send("containment", "__minus_gt", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_parent", [])]), smalltalk.send("helper", "__minus_gt", ["clone"]), smalltalk.send("start", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_startResizing_", [smalltalk.send(ui, "_helper", [])]);}]), smalltalk.send("drag", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(ui, "_offset", []), "_top", [])]);}])])]);
|
271
|
+
return self;
|
272
|
+
}
|
273
|
+
}),
|
274
|
+
smalltalk.HLHorizontalSplitter);
|
275
|
+
|
276
|
+
smalltalk.addMethod(
|
277
|
+
"_startResizing_",
|
278
|
+
smalltalk.method({
|
279
|
+
selector: "startResizing:",
|
280
|
+
fn: function (aSplitter) {
|
281
|
+
var self = this;
|
282
|
+
smalltalk.send(aSplitter, "_width_", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_width", [])]);
|
283
|
+
return self;
|
284
|
+
}
|
285
|
+
}),
|
286
|
+
smalltalk.HLHorizontalSplitter);
|
287
|
+
|
288
|
+
|
289
|
+
|
290
|
+
smalltalk.addClass('HLVerticalSplitter', smalltalk.HLSplitter, [], 'Helios-Layout');
|
291
|
+
smalltalk.addMethod(
|
292
|
+
"_cssClass",
|
293
|
+
smalltalk.method({
|
294
|
+
selector: "cssClass",
|
295
|
+
fn: function () {
|
296
|
+
var self = this;
|
297
|
+
var $1;
|
298
|
+
$1 = smalltalk.send(smalltalk.send(self, "_cssClass", [], smalltalk.HLSplitter), "__comma", [" vertical"]);
|
299
|
+
return $1;
|
300
|
+
}
|
301
|
+
}),
|
302
|
+
smalltalk.HLVerticalSplitter);
|
303
|
+
|
304
|
+
smalltalk.addMethod(
|
305
|
+
"_panesCssClass",
|
306
|
+
smalltalk.method({
|
307
|
+
selector: "panesCssClass",
|
308
|
+
fn: function () {
|
309
|
+
var self = this;
|
310
|
+
var $1;
|
311
|
+
$1 = smalltalk.send(smalltalk.send(self, "_panesCssClass", [], smalltalk.HLSplitter), "__comma", [" vertical"]);
|
312
|
+
return $1;
|
313
|
+
}
|
314
|
+
}),
|
315
|
+
smalltalk.HLVerticalSplitter);
|
316
|
+
|
317
|
+
smalltalk.addMethod(
|
318
|
+
"_resize",
|
319
|
+
smalltalk.method({
|
320
|
+
selector: "resize",
|
321
|
+
fn: function () {
|
322
|
+
var self = this;
|
323
|
+
smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_offset", []), "_left", [])]);
|
324
|
+
return self;
|
325
|
+
}
|
326
|
+
}),
|
327
|
+
smalltalk.HLVerticalSplitter);
|
328
|
+
|
329
|
+
smalltalk.addMethod(
|
330
|
+
"_resize_",
|
331
|
+
smalltalk.method({
|
332
|
+
selector: "resize:",
|
333
|
+
fn: function (anInteger) {
|
334
|
+
var self = this;
|
335
|
+
var container;
|
336
|
+
var position;
|
337
|
+
container = smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_parent", []);
|
338
|
+
position = smalltalk.send(anInteger, "__minus", [smalltalk.send(smalltalk.send(container, "_offset", []), "_left", [])]);
|
339
|
+
smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_width_", [smalltalk.send(smalltalk.send(position, "_min_", [smalltalk.send(smalltalk.send(container, "_width", []), "__minus", [100])]), "_max_", [100])]);
|
340
|
+
smalltalk.send(smalltalk.send(self['@secondPane'], "_asJQuery", []), "_width_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(container, "_width", []), "__minus", [position]), "_min_", [smalltalk.send(smalltalk.send(container, "_width", []), "__minus", [100])]), "_max_", [100]), "__minus", [6])]);
|
341
|
+
smalltalk.send(self, "_resize", [], smalltalk.HLSplitter);
|
342
|
+
return self;
|
343
|
+
}
|
344
|
+
}),
|
345
|
+
smalltalk.HLVerticalSplitter);
|
346
|
+
|
347
|
+
smalltalk.addMethod(
|
348
|
+
"_setupSplitter",
|
349
|
+
smalltalk.method({
|
350
|
+
selector: "setupSplitter",
|
351
|
+
fn: function () {
|
352
|
+
var self = this;
|
353
|
+
smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_draggable_", [smalltalk.HashedCollection._fromPairs_([smalltalk.send("axis", "__minus_gt", ["x"]), smalltalk.send("containment", "__minus_gt", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_parent", [])]), smalltalk.send("helper", "__minus_gt", ["clone"]), smalltalk.send("start", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_startResizing_", [smalltalk.send(ui, "_helper", [])]);}]), smalltalk.send("drag", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(ui, "_offset", []), "_left", [])]);}])])]);
|
354
|
+
return self;
|
355
|
+
}
|
356
|
+
}),
|
357
|
+
smalltalk.HLVerticalSplitter);
|
358
|
+
|
359
|
+
smalltalk.addMethod(
|
360
|
+
"_startResizing_",
|
361
|
+
smalltalk.method({
|
362
|
+
selector: "startResizing:",
|
363
|
+
fn: function (aSplitter) {
|
364
|
+
var self = this;
|
365
|
+
smalltalk.send(aSplitter, "_height_", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_height", [])]);
|
366
|
+
return self;
|
367
|
+
}
|
368
|
+
}),
|
369
|
+
smalltalk.HLVerticalSplitter);
|
370
|
+
|
371
|
+
|
372
|
+
|
373
|
+
smalltalk.addMethod(
|
374
|
+
"_isHeliosSplitter",
|
375
|
+
smalltalk.method({
|
376
|
+
selector: "isHeliosSplitter",
|
377
|
+
fn: function () {
|
378
|
+
var self = this;
|
379
|
+
return false;
|
380
|
+
}
|
381
|
+
}),
|
382
|
+
smalltalk.Object);
|
383
|
+
|
@@ -0,0 +1,523 @@
|
|
1
|
+
smalltalk.addPackage('Helios-Layout', {});
|
2
|
+
smalltalk.addClass('HLContainer', smalltalk.Widget, ['splitter'], 'Helios-Layout');
|
3
|
+
smalltalk.addMethod(
|
4
|
+
"_renderOn_",
|
5
|
+
smalltalk.method({
|
6
|
+
selector: "renderOn:",
|
7
|
+
category: 'rendering',
|
8
|
+
fn: function (html) {
|
9
|
+
var self = this;
|
10
|
+
var $1, $2;
|
11
|
+
$1 = smalltalk.send(html, "_div", []);
|
12
|
+
smalltalk.send($1, "_id_", ["container"]);
|
13
|
+
$2 = smalltalk.send($1, "_with_", [smalltalk.send(self, "_splitter", [])]);
|
14
|
+
smalltalk.send(smalltalk.send(window, "_jQuery_", [window]), "_bind_do_", ["resize", function () {return smalltalk.send(smalltalk.send(self, "_splitter", []), "_resize", []);}]);
|
15
|
+
return self;
|
16
|
+
},
|
17
|
+
args: ["html"],
|
18
|
+
source: "renderOn: html\x0a\x09html div \x0a \x09id: 'container'; \x0a with: self splitter.\x0a \x0a (window jQuery: window) bind: 'resize' do: [ self splitter resize ]",
|
19
|
+
messageSends: ["id:", "div", "with:", "splitter", "bind:do:", "resize", "jQuery:"],
|
20
|
+
referencedClasses: []
|
21
|
+
}),
|
22
|
+
smalltalk.HLContainer);
|
23
|
+
|
24
|
+
smalltalk.addMethod(
|
25
|
+
"_splitter",
|
26
|
+
smalltalk.method({
|
27
|
+
selector: "splitter",
|
28
|
+
category: 'accessing',
|
29
|
+
fn: function () {
|
30
|
+
var self = this;
|
31
|
+
return self['@splitter'];
|
32
|
+
},
|
33
|
+
args: [],
|
34
|
+
source: "splitter\x0a\x09^ splitter",
|
35
|
+
messageSends: [],
|
36
|
+
referencedClasses: []
|
37
|
+
}),
|
38
|
+
smalltalk.HLContainer);
|
39
|
+
|
40
|
+
smalltalk.addMethod(
|
41
|
+
"_splitter_",
|
42
|
+
smalltalk.method({
|
43
|
+
selector: "splitter:",
|
44
|
+
category: 'accessing',
|
45
|
+
fn: function (aSplitter) {
|
46
|
+
var self = this;
|
47
|
+
self['@splitter'] = aSplitter;
|
48
|
+
return self;
|
49
|
+
},
|
50
|
+
args: ["aSplitter"],
|
51
|
+
source: "splitter: aSplitter\x0a\x09splitter := aSplitter",
|
52
|
+
messageSends: [],
|
53
|
+
referencedClasses: []
|
54
|
+
}),
|
55
|
+
smalltalk.HLContainer);
|
56
|
+
|
57
|
+
|
58
|
+
smalltalk.addMethod(
|
59
|
+
"_with_",
|
60
|
+
smalltalk.method({
|
61
|
+
selector: "with:",
|
62
|
+
category: 'instance creation',
|
63
|
+
fn: function (aSplitter) {
|
64
|
+
var self = this;
|
65
|
+
var $2, $3, $1;
|
66
|
+
$2 = smalltalk.send(self, "_new", []);
|
67
|
+
smalltalk.send($2, "_splitter_", [aSplitter]);
|
68
|
+
$3 = smalltalk.send($2, "_yourself", []);
|
69
|
+
$1 = $3;
|
70
|
+
return $1;
|
71
|
+
},
|
72
|
+
args: ["aSplitter"],
|
73
|
+
source: "with: aSplitter\x0a\x09^ self new \x0a \x09splitter: aSplitter; \x0a yourself",
|
74
|
+
messageSends: ["splitter:", "new", "yourself"],
|
75
|
+
referencedClasses: []
|
76
|
+
}),
|
77
|
+
smalltalk.HLContainer.klass);
|
78
|
+
|
79
|
+
|
80
|
+
smalltalk.addClass('HLSplitter', smalltalk.Widget, ['firstWidget', 'secondWidget', 'firstPane', 'secondPane', 'splitter'], 'Helios-Layout');
|
81
|
+
smalltalk.addMethod(
|
82
|
+
"_cssClass",
|
83
|
+
smalltalk.method({
|
84
|
+
selector: "cssClass",
|
85
|
+
category: 'accessing',
|
86
|
+
fn: function () {
|
87
|
+
var self = this;
|
88
|
+
return "splitter";
|
89
|
+
},
|
90
|
+
args: [],
|
91
|
+
source: "cssClass\x0a\x09^ 'splitter'",
|
92
|
+
messageSends: [],
|
93
|
+
referencedClasses: []
|
94
|
+
}),
|
95
|
+
smalltalk.HLSplitter);
|
96
|
+
|
97
|
+
smalltalk.addMethod(
|
98
|
+
"_firstWidget",
|
99
|
+
smalltalk.method({
|
100
|
+
selector: "firstWidget",
|
101
|
+
category: 'accessing',
|
102
|
+
fn: function () {
|
103
|
+
var self = this;
|
104
|
+
return self['@firstWidget'];
|
105
|
+
},
|
106
|
+
args: [],
|
107
|
+
source: "firstWidget\x0a\x09^ firstWidget",
|
108
|
+
messageSends: [],
|
109
|
+
referencedClasses: []
|
110
|
+
}),
|
111
|
+
smalltalk.HLSplitter);
|
112
|
+
|
113
|
+
smalltalk.addMethod(
|
114
|
+
"_firstWidget_",
|
115
|
+
smalltalk.method({
|
116
|
+
selector: "firstWidget:",
|
117
|
+
category: 'accessing',
|
118
|
+
fn: function (aWidget) {
|
119
|
+
var self = this;
|
120
|
+
self['@firstWidget'] = aWidget;
|
121
|
+
return self;
|
122
|
+
},
|
123
|
+
args: ["aWidget"],
|
124
|
+
source: "firstWidget: aWidget\x0a\x09firstWidget := aWidget",
|
125
|
+
messageSends: [],
|
126
|
+
referencedClasses: []
|
127
|
+
}),
|
128
|
+
smalltalk.HLSplitter);
|
129
|
+
|
130
|
+
smalltalk.addMethod(
|
131
|
+
"_isHeliosSplitter",
|
132
|
+
smalltalk.method({
|
133
|
+
selector: "isHeliosSplitter",
|
134
|
+
category: 'testing',
|
135
|
+
fn: function () {
|
136
|
+
var self = this;
|
137
|
+
return true;
|
138
|
+
},
|
139
|
+
args: [],
|
140
|
+
source: "isHeliosSplitter\x0a\x09^ true",
|
141
|
+
messageSends: [],
|
142
|
+
referencedClasses: []
|
143
|
+
}),
|
144
|
+
smalltalk.HLSplitter);
|
145
|
+
|
146
|
+
smalltalk.addMethod(
|
147
|
+
"_panesCssClass",
|
148
|
+
smalltalk.method({
|
149
|
+
selector: "panesCssClass",
|
150
|
+
category: 'rendering',
|
151
|
+
fn: function () {
|
152
|
+
var self = this;
|
153
|
+
return "panes";
|
154
|
+
},
|
155
|
+
args: [],
|
156
|
+
source: "panesCssClass\x0a\x09^ 'panes'",
|
157
|
+
messageSends: [],
|
158
|
+
referencedClasses: []
|
159
|
+
}),
|
160
|
+
smalltalk.HLSplitter);
|
161
|
+
|
162
|
+
smalltalk.addMethod(
|
163
|
+
"_renderOn_",
|
164
|
+
smalltalk.method({
|
165
|
+
selector: "renderOn:",
|
166
|
+
category: 'rendering',
|
167
|
+
fn: function (html) {
|
168
|
+
var self = this;
|
169
|
+
var $1, $3, $4, $5, $6, $2, $7;
|
170
|
+
$1 = smalltalk.send(html, "_div", []);
|
171
|
+
smalltalk.send($1, "_class_", [smalltalk.send(self, "_panesCssClass", [])]);
|
172
|
+
$2 = smalltalk.send($1, "_with_", [function () {$3 = smalltalk.send(html, "_div", []);smalltalk.send($3, "_class_", ["pane"]);$4 = smalltalk.send($3, "_with_", [smalltalk.send(self, "_firstWidget", [])]);self['@firstPane'] = $4;self['@firstPane'];self['@splitter'] = smalltalk.send(smalltalk.send(html, "_div", []), "_class_", [smalltalk.send(self, "_cssClass", [])]);self['@splitter'];$5 = smalltalk.send(html, "_div", []);smalltalk.send($5, "_class_", ["pane"]);$6 = smalltalk.send($5, "_with_", [smalltalk.send(self, "_secondWidget", [])]);self['@secondPane'] = $6;return self['@secondPane'];}]);
|
173
|
+
smalltalk.send(self, "_setupSplitter", []);
|
174
|
+
$7 = smalltalk.send(self, "_resize", []);
|
175
|
+
return self;
|
176
|
+
},
|
177
|
+
args: ["html"],
|
178
|
+
source: "renderOn: html\x0a\x09html div class: self panesCssClass; with: [\x0a\x09\x09firstPane := html div class: 'pane'; with: self firstWidget.\x0a \x09splitter := html div class: self cssClass.\x0a \x09secondPane := html div class: 'pane'; with: self secondWidget ].\x0a \x0a\x09self \x0a \x09setupSplitter;\x0a resize",
|
179
|
+
messageSends: ["class:", "panesCssClass", "div", "with:", "firstWidget", "cssClass", "secondWidget", "setupSplitter", "resize"],
|
180
|
+
referencedClasses: []
|
181
|
+
}),
|
182
|
+
smalltalk.HLSplitter);
|
183
|
+
|
184
|
+
smalltalk.addMethod(
|
185
|
+
"_resize",
|
186
|
+
smalltalk.method({
|
187
|
+
selector: "resize",
|
188
|
+
category: 'rendering',
|
189
|
+
fn: function () {
|
190
|
+
var self = this;
|
191
|
+
var $1, $2;
|
192
|
+
$1 = smalltalk.send(smalltalk.send(self, "_firstWidget", []), "_isHeliosSplitter", []);
|
193
|
+
if (smalltalk.assert($1)) {
|
194
|
+
smalltalk.send(smalltalk.send(self, "_firstWidget", []), "_resize", []);
|
195
|
+
}
|
196
|
+
$2 = smalltalk.send(smalltalk.send(self, "_secondWidget", []), "_isHeliosSplitter", []);
|
197
|
+
if (smalltalk.assert($2)) {
|
198
|
+
smalltalk.send(smalltalk.send(self, "_secondWidget", []), "_resize", []);
|
199
|
+
}
|
200
|
+
return self;
|
201
|
+
},
|
202
|
+
args: [],
|
203
|
+
source: "resize\x0a\x09self firstWidget isHeliosSplitter ifTrue: [ self firstWidget resize ].\x0a self secondWidget isHeliosSplitter ifTrue: [ self secondWidget resize ]",
|
204
|
+
messageSends: ["ifTrue:", "resize", "firstWidget", "isHeliosSplitter", "secondWidget"],
|
205
|
+
referencedClasses: []
|
206
|
+
}),
|
207
|
+
smalltalk.HLSplitter);
|
208
|
+
|
209
|
+
smalltalk.addMethod(
|
210
|
+
"_secondWidget",
|
211
|
+
smalltalk.method({
|
212
|
+
selector: "secondWidget",
|
213
|
+
category: 'accessing',
|
214
|
+
fn: function () {
|
215
|
+
var self = this;
|
216
|
+
return self['@secondWidget'];
|
217
|
+
},
|
218
|
+
args: [],
|
219
|
+
source: "secondWidget\x0a\x09^ secondWidget",
|
220
|
+
messageSends: [],
|
221
|
+
referencedClasses: []
|
222
|
+
}),
|
223
|
+
smalltalk.HLSplitter);
|
224
|
+
|
225
|
+
smalltalk.addMethod(
|
226
|
+
"_secondWidget_",
|
227
|
+
smalltalk.method({
|
228
|
+
selector: "secondWidget:",
|
229
|
+
category: 'accessing',
|
230
|
+
fn: function (aWidget) {
|
231
|
+
var self = this;
|
232
|
+
self['@secondWidget'] = aWidget;
|
233
|
+
return self;
|
234
|
+
},
|
235
|
+
args: ["aWidget"],
|
236
|
+
source: "secondWidget: aWidget\x0a\x09secondWidget := aWidget",
|
237
|
+
messageSends: [],
|
238
|
+
referencedClasses: []
|
239
|
+
}),
|
240
|
+
smalltalk.HLSplitter);
|
241
|
+
|
242
|
+
smalltalk.addMethod(
|
243
|
+
"_setupSplitter",
|
244
|
+
smalltalk.method({
|
245
|
+
selector: "setupSplitter",
|
246
|
+
category: 'rendering',
|
247
|
+
fn: function () {
|
248
|
+
var self = this;
|
249
|
+
return self;
|
250
|
+
},
|
251
|
+
args: [],
|
252
|
+
source: "setupSplitter",
|
253
|
+
messageSends: [],
|
254
|
+
referencedClasses: []
|
255
|
+
}),
|
256
|
+
smalltalk.HLSplitter);
|
257
|
+
|
258
|
+
|
259
|
+
smalltalk.addMethod(
|
260
|
+
"_with_with_",
|
261
|
+
smalltalk.method({
|
262
|
+
selector: "with:with:",
|
263
|
+
category: 'instance creation',
|
264
|
+
fn: function (aWidget, anotherWidget) {
|
265
|
+
var self = this;
|
266
|
+
var $2, $3, $1;
|
267
|
+
$2 = smalltalk.send(self, "_new", []);
|
268
|
+
smalltalk.send($2, "_firstWidget_", [aWidget]);
|
269
|
+
smalltalk.send($2, "_secondWidget_", [anotherWidget]);
|
270
|
+
$3 = smalltalk.send($2, "_yourself", []);
|
271
|
+
$1 = $3;
|
272
|
+
return $1;
|
273
|
+
},
|
274
|
+
args: ["aWidget", "anotherWidget"],
|
275
|
+
source: "with: aWidget with: anotherWidget\x0a\x09^ self new\x0a \x09\x09firstWidget: aWidget;\x0a secondWidget: anotherWidget;\x0a yourself",
|
276
|
+
messageSends: ["firstWidget:", "new", "secondWidget:", "yourself"],
|
277
|
+
referencedClasses: []
|
278
|
+
}),
|
279
|
+
smalltalk.HLSplitter.klass);
|
280
|
+
|
281
|
+
|
282
|
+
smalltalk.addClass('HLHorizontalSplitter', smalltalk.HLSplitter, [], 'Helios-Layout');
|
283
|
+
smalltalk.addMethod(
|
284
|
+
"_cssClass",
|
285
|
+
smalltalk.method({
|
286
|
+
selector: "cssClass",
|
287
|
+
category: 'accessing',
|
288
|
+
fn: function () {
|
289
|
+
var self = this;
|
290
|
+
var $1;
|
291
|
+
$1 = smalltalk.send(smalltalk.send(self, "_cssClass", [], smalltalk.HLSplitter), "__comma", [" horizontal"]);
|
292
|
+
return $1;
|
293
|
+
},
|
294
|
+
args: [],
|
295
|
+
source: "cssClass\x0a\x09^ super cssClass, ' horizontal'",
|
296
|
+
messageSends: [",", "cssClass"],
|
297
|
+
referencedClasses: []
|
298
|
+
}),
|
299
|
+
smalltalk.HLHorizontalSplitter);
|
300
|
+
|
301
|
+
smalltalk.addMethod(
|
302
|
+
"_panesCssClass",
|
303
|
+
smalltalk.method({
|
304
|
+
selector: "panesCssClass",
|
305
|
+
category: 'accessing',
|
306
|
+
fn: function () {
|
307
|
+
var self = this;
|
308
|
+
var $1;
|
309
|
+
$1 = smalltalk.send(smalltalk.send(self, "_panesCssClass", [], smalltalk.HLSplitter), "__comma", [" horizontal"]);
|
310
|
+
return $1;
|
311
|
+
},
|
312
|
+
args: [],
|
313
|
+
source: "panesCssClass\x0a\x09^ super panesCssClass, ' horizontal'",
|
314
|
+
messageSends: [",", "panesCssClass"],
|
315
|
+
referencedClasses: []
|
316
|
+
}),
|
317
|
+
smalltalk.HLHorizontalSplitter);
|
318
|
+
|
319
|
+
smalltalk.addMethod(
|
320
|
+
"_resize",
|
321
|
+
smalltalk.method({
|
322
|
+
selector: "resize",
|
323
|
+
category: 'actions',
|
324
|
+
fn: function () {
|
325
|
+
var self = this;
|
326
|
+
smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_offset", []), "_top", [])]);
|
327
|
+
return self;
|
328
|
+
},
|
329
|
+
args: [],
|
330
|
+
source: "resize\x0a\x09self resize: splitter asJQuery offset top",
|
331
|
+
messageSends: ["resize:", "top", "offset", "asJQuery"],
|
332
|
+
referencedClasses: []
|
333
|
+
}),
|
334
|
+
smalltalk.HLHorizontalSplitter);
|
335
|
+
|
336
|
+
smalltalk.addMethod(
|
337
|
+
"_resize_",
|
338
|
+
smalltalk.method({
|
339
|
+
selector: "resize:",
|
340
|
+
category: 'actions',
|
341
|
+
fn: function (anInteger) {
|
342
|
+
var self = this;
|
343
|
+
var container;
|
344
|
+
var position;
|
345
|
+
container = smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_parent", []);
|
346
|
+
position = smalltalk.send(anInteger, "__minus", [smalltalk.send(smalltalk.send(container, "_offset", []), "_top", [])]);
|
347
|
+
smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_height_", [smalltalk.send(smalltalk.send(position, "_min_", [smalltalk.send(smalltalk.send(container, "_height", []), "__minus", [100])]), "_max_", [100])]);
|
348
|
+
smalltalk.send(smalltalk.send(self['@secondPane'], "_asJQuery", []), "_height_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(container, "_height", []), "__minus", [position]), "_min_", [smalltalk.send(smalltalk.send(container, "_height", []), "__minus", [100])]), "_max_", [100]), "__minus", [6])]);
|
349
|
+
smalltalk.send(self, "_resize", [], smalltalk.HLSplitter);
|
350
|
+
return self;
|
351
|
+
},
|
352
|
+
args: ["anInteger"],
|
353
|
+
source: "resize: anInteger\x0a\x09| container position |\x0a \x0a container := firstPane asJQuery parent.\x0a position := anInteger - container offset top.\x0a \x0a\x09firstPane asJQuery height: ((position min: container height - 100) max: 100).\x0a secondPane asJQuery height: (((container height - position) min: container height - 100) max: 100) - 6.\x0a \x0a super resize",
|
354
|
+
messageSends: ["parent", "asJQuery", "-", "top", "offset", "height:", "max:", "min:", "height", "resize"],
|
355
|
+
referencedClasses: []
|
356
|
+
}),
|
357
|
+
smalltalk.HLHorizontalSplitter);
|
358
|
+
|
359
|
+
smalltalk.addMethod(
|
360
|
+
"_setupSplitter",
|
361
|
+
smalltalk.method({
|
362
|
+
selector: "setupSplitter",
|
363
|
+
category: 'rendering',
|
364
|
+
fn: function () {
|
365
|
+
var self = this;
|
366
|
+
smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_draggable_", [smalltalk.HashedCollection._fromPairs_([smalltalk.send("axis", "__minus_gt", ["y"]), smalltalk.send("containment", "__minus_gt", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_parent", [])]), smalltalk.send("helper", "__minus_gt", ["clone"]), smalltalk.send("start", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_startResizing_", [smalltalk.send(ui, "_helper", [])]);}]), smalltalk.send("drag", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(ui, "_offset", []), "_top", [])]);}])])]);
|
367
|
+
return self;
|
368
|
+
},
|
369
|
+
args: [],
|
370
|
+
source: "setupSplitter\x0a\x09splitter asJQuery draggable: #{ \x0a \x09'axis' -> 'y'. \x0a 'containment' -> splitter asJQuery parent.\x0a 'helper' -> 'clone'.\x0a 'start' -> [ :e :ui | self startResizing: ui helper ].\x0a 'drag' -> [ :e :ui | self resize: ui offset top ] }",
|
371
|
+
messageSends: ["draggable:", "->", "parent", "asJQuery", "startResizing:", "helper", "resize:", "top", "offset"],
|
372
|
+
referencedClasses: []
|
373
|
+
}),
|
374
|
+
smalltalk.HLHorizontalSplitter);
|
375
|
+
|
376
|
+
smalltalk.addMethod(
|
377
|
+
"_startResizing_",
|
378
|
+
smalltalk.method({
|
379
|
+
selector: "startResizing:",
|
380
|
+
category: 'actions',
|
381
|
+
fn: function (aSplitter) {
|
382
|
+
var self = this;
|
383
|
+
smalltalk.send(aSplitter, "_width_", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_width", [])]);
|
384
|
+
return self;
|
385
|
+
},
|
386
|
+
args: ["aSplitter"],
|
387
|
+
source: "startResizing: aSplitter\x0a\x09aSplitter width: splitter asJQuery width",
|
388
|
+
messageSends: ["width:", "width", "asJQuery"],
|
389
|
+
referencedClasses: []
|
390
|
+
}),
|
391
|
+
smalltalk.HLHorizontalSplitter);
|
392
|
+
|
393
|
+
|
394
|
+
|
395
|
+
smalltalk.addClass('HLVerticalSplitter', smalltalk.HLSplitter, [], 'Helios-Layout');
|
396
|
+
smalltalk.addMethod(
|
397
|
+
"_cssClass",
|
398
|
+
smalltalk.method({
|
399
|
+
selector: "cssClass",
|
400
|
+
category: 'accessing',
|
401
|
+
fn: function () {
|
402
|
+
var self = this;
|
403
|
+
var $1;
|
404
|
+
$1 = smalltalk.send(smalltalk.send(self, "_cssClass", [], smalltalk.HLSplitter), "__comma", [" vertical"]);
|
405
|
+
return $1;
|
406
|
+
},
|
407
|
+
args: [],
|
408
|
+
source: "cssClass\x0a\x09^ super cssClass, ' vertical'",
|
409
|
+
messageSends: [",", "cssClass"],
|
410
|
+
referencedClasses: []
|
411
|
+
}),
|
412
|
+
smalltalk.HLVerticalSplitter);
|
413
|
+
|
414
|
+
smalltalk.addMethod(
|
415
|
+
"_panesCssClass",
|
416
|
+
smalltalk.method({
|
417
|
+
selector: "panesCssClass",
|
418
|
+
category: 'accessing',
|
419
|
+
fn: function () {
|
420
|
+
var self = this;
|
421
|
+
var $1;
|
422
|
+
$1 = smalltalk.send(smalltalk.send(self, "_panesCssClass", [], smalltalk.HLSplitter), "__comma", [" vertical"]);
|
423
|
+
return $1;
|
424
|
+
},
|
425
|
+
args: [],
|
426
|
+
source: "panesCssClass\x0a\x09^ super panesCssClass, ' vertical'",
|
427
|
+
messageSends: [",", "panesCssClass"],
|
428
|
+
referencedClasses: []
|
429
|
+
}),
|
430
|
+
smalltalk.HLVerticalSplitter);
|
431
|
+
|
432
|
+
smalltalk.addMethod(
|
433
|
+
"_resize",
|
434
|
+
smalltalk.method({
|
435
|
+
selector: "resize",
|
436
|
+
category: 'actions',
|
437
|
+
fn: function () {
|
438
|
+
var self = this;
|
439
|
+
smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_offset", []), "_left", [])]);
|
440
|
+
return self;
|
441
|
+
},
|
442
|
+
args: [],
|
443
|
+
source: "resize\x0a\x09self resize: splitter asJQuery offset left",
|
444
|
+
messageSends: ["resize:", "left", "offset", "asJQuery"],
|
445
|
+
referencedClasses: []
|
446
|
+
}),
|
447
|
+
smalltalk.HLVerticalSplitter);
|
448
|
+
|
449
|
+
smalltalk.addMethod(
|
450
|
+
"_resize_",
|
451
|
+
smalltalk.method({
|
452
|
+
selector: "resize:",
|
453
|
+
category: 'actions',
|
454
|
+
fn: function (anInteger) {
|
455
|
+
var self = this;
|
456
|
+
var container;
|
457
|
+
var position;
|
458
|
+
container = smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_parent", []);
|
459
|
+
position = smalltalk.send(anInteger, "__minus", [smalltalk.send(smalltalk.send(container, "_offset", []), "_left", [])]);
|
460
|
+
smalltalk.send(smalltalk.send(self['@firstPane'], "_asJQuery", []), "_width_", [smalltalk.send(smalltalk.send(position, "_min_", [smalltalk.send(smalltalk.send(container, "_width", []), "__minus", [100])]), "_max_", [100])]);
|
461
|
+
smalltalk.send(smalltalk.send(self['@secondPane'], "_asJQuery", []), "_width_", [smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(smalltalk.send(container, "_width", []), "__minus", [position]), "_min_", [smalltalk.send(smalltalk.send(container, "_width", []), "__minus", [100])]), "_max_", [100]), "__minus", [6])]);
|
462
|
+
smalltalk.send(self, "_resize", [], smalltalk.HLSplitter);
|
463
|
+
return self;
|
464
|
+
},
|
465
|
+
args: ["anInteger"],
|
466
|
+
source: "resize: anInteger\x0a\x09| container position |\x0a \x0a container := firstPane asJQuery parent.\x0a position := anInteger - container offset left.\x0a \x0a\x09firstPane asJQuery width: ((position min: container width - 100) max: 100).\x0a secondPane asJQuery width: (((container width - position) min: container width - 100) max: 100) - 6.\x0a \x0a super resize",
|
467
|
+
messageSends: ["parent", "asJQuery", "-", "left", "offset", "width:", "max:", "min:", "width", "resize"],
|
468
|
+
referencedClasses: []
|
469
|
+
}),
|
470
|
+
smalltalk.HLVerticalSplitter);
|
471
|
+
|
472
|
+
smalltalk.addMethod(
|
473
|
+
"_setupSplitter",
|
474
|
+
smalltalk.method({
|
475
|
+
selector: "setupSplitter",
|
476
|
+
category: 'rendering',
|
477
|
+
fn: function () {
|
478
|
+
var self = this;
|
479
|
+
smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_draggable_", [smalltalk.HashedCollection._fromPairs_([smalltalk.send("axis", "__minus_gt", ["x"]), smalltalk.send("containment", "__minus_gt", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_parent", [])]), smalltalk.send("helper", "__minus_gt", ["clone"]), smalltalk.send("start", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_startResizing_", [smalltalk.send(ui, "_helper", [])]);}]), smalltalk.send("drag", "__minus_gt", [function (e, ui) {return smalltalk.send(self, "_resize_", [smalltalk.send(smalltalk.send(ui, "_offset", []), "_left", [])]);}])])]);
|
480
|
+
return self;
|
481
|
+
},
|
482
|
+
args: [],
|
483
|
+
source: "setupSplitter\x0a\x09splitter asJQuery draggable: #{ \x0a \x09'axis' -> 'x'. \x0a 'containment' -> splitter asJQuery parent.\x0a 'helper' -> 'clone'.\x0a 'start' -> [ :e :ui | self startResizing: ui helper ].\x0a 'drag' -> [ :e :ui | self resize: ui offset left ] }",
|
484
|
+
messageSends: ["draggable:", "->", "parent", "asJQuery", "startResizing:", "helper", "resize:", "left", "offset"],
|
485
|
+
referencedClasses: []
|
486
|
+
}),
|
487
|
+
smalltalk.HLVerticalSplitter);
|
488
|
+
|
489
|
+
smalltalk.addMethod(
|
490
|
+
"_startResizing_",
|
491
|
+
smalltalk.method({
|
492
|
+
selector: "startResizing:",
|
493
|
+
category: 'actions',
|
494
|
+
fn: function (aSplitter) {
|
495
|
+
var self = this;
|
496
|
+
smalltalk.send(aSplitter, "_height_", [smalltalk.send(smalltalk.send(self['@splitter'], "_asJQuery", []), "_height", [])]);
|
497
|
+
return self;
|
498
|
+
},
|
499
|
+
args: ["aSplitter"],
|
500
|
+
source: "startResizing: aSplitter\x0a\x09aSplitter height: splitter asJQuery height",
|
501
|
+
messageSends: ["height:", "height", "asJQuery"],
|
502
|
+
referencedClasses: []
|
503
|
+
}),
|
504
|
+
smalltalk.HLVerticalSplitter);
|
505
|
+
|
506
|
+
|
507
|
+
|
508
|
+
smalltalk.addMethod(
|
509
|
+
"_isHeliosSplitter",
|
510
|
+
smalltalk.method({
|
511
|
+
selector: "isHeliosSplitter",
|
512
|
+
category: '*Helios-Layout',
|
513
|
+
fn: function () {
|
514
|
+
var self = this;
|
515
|
+
return false;
|
516
|
+
},
|
517
|
+
args: [],
|
518
|
+
source: "isHeliosSplitter\x0a\x09^ false",
|
519
|
+
messageSends: [],
|
520
|
+
referencedClasses: []
|
521
|
+
}),
|
522
|
+
smalltalk.Object);
|
523
|
+
|