author | Claus Gittinger <cg@exept.de> |
Sun, 04 Dec 2011 15:44:23 +0100 | |
changeset 540 | bacdf1aea4a3 |
parent 516 | 41006ee80f02 |
child 558 | 6740bbea6eeb |
permissions | -rw-r--r-- |
289 | 1 |
"{ Package: 'stx:goodies/monticello' }" |
2 |
||
3 |
ApplicationModel subclass:#MCRepositoryBrowser |
|
4 |
instanceVariableNames:'repositoriesHolder packagesHolder versionsHolder |
|
463 | 5 |
selectedVersionHolder worker selectedVersionDetailsHolder |
472 | 6 |
selectedRepositoryHolder targetPackage targetNamespace |
495 | 7 |
lastPackage targetPackageHolder targetNamespaceNameHolder |
540 | 8 |
updateChangefileHolder selectedPackageHolder' |
289 | 9 |
classVariableNames:'' |
10 |
poolDictionaries:'' |
|
11 |
category:'Monticello-St/X UI' |
|
12 |
! |
|
13 |
||
14 |
||
485 | 15 |
!MCRepositoryBrowser class methodsFor:'help specs'! |
16 |
||
17 |
flyByHelpSpec |
|
18 |
"This resource specification was automatically generated |
|
19 |
by the UIHelpTool of ST/X." |
|
20 |
||
21 |
"Do not manually edit this!! If it is corrupted, |
|
22 |
the UIHelpTool may not be able to read the specification." |
|
23 |
||
24 |
" |
|
25 |
UIHelpTool openOnClass:MCRepositoryBrowser |
|
26 |
" |
|
27 |
||
28 |
<resource: #help> |
|
29 |
||
30 |
^ super flyByHelpSpec addPairsFrom:#( |
|
31 |
||
32 |
#loadVersion |
|
33 |
'Load the selected version' |
|
34 |
||
35 |
#targetNamespace |
|
36 |
'Namespace override. Change via the "Loading"-Menu' |
|
37 |
||
38 |
#targetPackage |
|
39 |
'ST/X Package override. Change via the "Loading"-Menu' |
|
40 |
||
41 |
) |
|
42 |
||
43 |
"Created: / 07-09-2011 / 15:13:00 / cg" |
|
44 |
! ! |
|
45 |
||
289 | 46 |
!MCRepositoryBrowser class methodsFor:'interface specs'! |
47 |
||
48 |
packageDetailsSpec |
|
49 |
"This resource specification was automatically generated |
|
50 |
by the UIPainter of ST/X." |
|
51 |
||
52 |
"Do not manually edit this!! If it is corrupted, |
|
53 |
the UIPainter may not be able to read the specification." |
|
54 |
||
55 |
" |
|
472 | 56 |
UIPainter new openOnClass:MCRepositoryBrowser andSelector:#packageDetailsSpec |
57 |
MCRepositoryBrowser new openInterface:#packageDetailsSpec |
|
289 | 58 |
" |
59 |
||
60 |
<resource: #canvas> |
|
61 |
||
62 |
^ |
|
63 |
#(FullSpec |
|
472 | 64 |
name: packageDetailsSpec |
289 | 65 |
window: |
66 |
(WindowSpec |
|
67 |
label: 'MC Package Details' |
|
68 |
name: 'MC Package Details' |
|
69 |
min: (Point 10 10) |
|
70 |
bounds: (Rectangle 0 0 533 326) |
|
71 |
) |
|
72 |
component: |
|
73 |
(SpecCollection |
|
74 |
collection: ( |
|
75 |
(TextEditorSpec |
|
76 |
name: 'PackageDetails' |
|
77 |
layout: (LayoutFrame 0 0 0 0 0 1 -30 1) |
|
78 |
model: selectedVersionDetailsHolder |
|
79 |
hasHorizontalScrollBar: true |
|
80 |
hasVerticalScrollBar: true |
|
81 |
isReadOnly: true |
|
82 |
hasKeyboardFocusInitially: false |
|
83 |
) |
|
485 | 84 |
(LabelSpec |
85 |
name: 'Label1' |
|
86 |
layout: (LayoutFrame 2 0 -30 1 -1 0.5 -2 1) |
|
87 |
activeHelpKey: targetNamespace |
|
88 |
level: -1 |
|
89 |
translateLabel: true |
|
90 |
labelChannel: targetNamespaceNameHolder |
|
91 |
adjust: left |
|
92 |
) |
|
93 |
(LabelSpec |
|
94 |
name: 'Label2' |
|
95 |
layout: (LayoutFrame 1 0.5 -30 1 -2 1 -2 1) |
|
96 |
activeHelpKey: targetPackage |
|
97 |
level: -1 |
|
98 |
translateLabel: true |
|
99 |
labelChannel: targetPackageHolder |
|
100 |
adjust: left |
|
101 |
) |
|
289 | 102 |
) |
103 |
||
104 |
) |
|
105 |
) |
|
106 |
! |
|
107 |
||
108 |
windowSpec |
|
109 |
"This resource specification was automatically generated |
|
110 |
by the UIPainter of ST/X." |
|
111 |
||
112 |
"Do not manually edit this!! If it is corrupted, |
|
113 |
the UIPainter may not be able to read the specification." |
|
114 |
||
115 |
" |
|
116 |
UIPainter new openOnClass:MCRepositoryBrowser andSelector:#windowSpec |
|
117 |
MCRepositoryBrowser new openInterface:#windowSpec |
|
118 |
MCRepositoryBrowser open |
|
119 |
" |
|
120 |
||
121 |
<resource: #canvas> |
|
122 |
||
123 |
^ |
|
124 |
#(FullSpec |
|
125 |
name: windowSpec |
|
126 |
window: |
|
127 |
(WindowSpec |
|
128 |
label: 'MC Repository Browser' |
|
129 |
name: 'MC Repository Browser' |
|
130 |
min: (Point 10 10) |
|
131 |
bounds: (Rectangle 0 0 796 497) |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
132 |
menu: mainMenu |
289 | 133 |
) |
134 |
component: |
|
135 |
(SpecCollection |
|
136 |
collection: ( |
|
137 |
(VariableVerticalPanelSpec |
|
138 |
name: 'VariableVerticalPanel1' |
|
139 |
layout: (LayoutFrame 0 0 0 0 0 1 0 1) |
|
140 |
component: |
|
141 |
(SpecCollection |
|
142 |
collection: ( |
|
143 |
(VariableHorizontalPanelSpec |
|
144 |
name: 'VariableHorizontalPanel1' |
|
145 |
component: |
|
146 |
(SpecCollection |
|
147 |
collection: ( |
|
148 |
(SubCanvasSpec |
|
149 |
name: 'RepositoryList' |
|
150 |
hasHorizontalScrollBar: false |
|
151 |
hasVerticalScrollBar: false |
|
152 |
majorKey: MCRepositoryList |
|
153 |
subAspectHolders: |
|
154 |
(Array |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
155 |
|
435 | 156 |
(SubChannelInfoSpec |
157 |
subAspect: menuHolder |
|
158 |
aspect: repositoryListMenu |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
159 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
160 |
(SubChannelInfoSpec |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
161 |
subAspect: inGeneratorHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
162 |
aspect: repositoriesHolder |
435 | 163 |
) |
289 | 164 |
|
165 |
(SubChannelInfoSpec |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
166 |
subAspect: outGeneratorHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
167 |
aspect: packagesHolder |
289 | 168 |
) |
169 |
(SubChannelInfoSpec |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
170 |
subAspect: selectionHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
171 |
aspect: selectedRepositoryHolder |
289 | 172 |
) |
173 |
) |
|
174 |
createNewApplication: true |
|
175 |
createNewBuilder: true |
|
176 |
) |
|
177 |
(SubCanvasSpec |
|
178 |
name: 'PackageList' |
|
179 |
hasHorizontalScrollBar: false |
|
180 |
hasVerticalScrollBar: false |
|
181 |
majorKey: MCPackageList |
|
182 |
subAspectHolders: |
|
183 |
(Array |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
184 |
|
435 | 185 |
(SubChannelInfoSpec |
186 |
subAspect: menuHolder |
|
187 |
aspect: packageListMenu |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
188 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
189 |
(SubChannelInfoSpec |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
190 |
subAspect: inGeneratorHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
191 |
aspect: packagesHolder |
435 | 192 |
) |
289 | 193 |
|
194 |
(SubChannelInfoSpec |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
195 |
subAspect: outGeneratorHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
196 |
aspect: versionsHolder |
289 | 197 |
) |
198 |
(SubChannelInfoSpec |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
199 |
subAspect: selectionHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
200 |
aspect: selectedPackageHolder |
289 | 201 |
) |
202 |
) |
|
203 |
createNewApplication: true |
|
204 |
createNewBuilder: true |
|
205 |
) |
|
472 | 206 |
(ViewSpec |
207 |
name: 'Box1' |
|
208 |
component: |
|
209 |
(SpecCollection |
|
210 |
collection: ( |
|
211 |
(SubCanvasSpec |
|
212 |
name: 'VersionList' |
|
213 |
layout: (LayoutFrame 0 0 0 0 0 1 -30 1) |
|
214 |
hasHorizontalScrollBar: false |
|
215 |
hasVerticalScrollBar: false |
|
216 |
majorKey: MCVersionList |
|
217 |
subAspectHolders: |
|
218 |
(Array |
|
219 |
||
220 |
(SubChannelInfoSpec |
|
221 |
subAspect: inGeneratorHolder |
|
222 |
aspect: versionsHolder |
|
223 |
) |
|
224 |
(SubChannelInfoSpec |
|
225 |
subAspect: menuHolder |
|
226 |
aspect: versionsMenu |
|
227 |
) |
|
228 |
||
229 |
(SubChannelInfoSpec |
|
230 |
subAspect: selectionHolder |
|
231 |
aspect: selectedVersionHolder |
|
232 |
) |
|
233 |
) |
|
234 |
createNewApplication: true |
|
235 |
createNewBuilder: true |
|
236 |
) |
|
237 |
(ActionButtonSpec |
|
238 |
label: 'Load' |
|
239 |
name: 'LoadButton' |
|
240 |
layout: (LayoutFrame 0 0 -30 1 0 1 0 1) |
|
241 |
translateLabel: true |
|
242 |
model: versionLoad |
|
243 |
enableChannel: hasVersionSelectedHolder |
|
485 | 244 |
activeHelpKey: loadVersion |
472 | 245 |
) |
246 |
) |
|
247 |
||
289 | 248 |
) |
249 |
) |
|
250 |
) |
|
251 |
||
252 |
) |
|
253 |
handles: (Any 0.333333333333333 0.666666666666667 1.0) |
|
254 |
) |
|
255 |
(UISubSpecification |
|
256 |
name: 'SubSpecification1' |
|
257 |
minorKey: packageDetailsSpec |
|
258 |
) |
|
259 |
) |
|
260 |
||
261 |
) |
|
262 |
handles: (Any 0.5 1.0) |
|
263 |
) |
|
264 |
) |
|
265 |
||
266 |
) |
|
267 |
) |
|
485 | 268 |
|
269 |
"Modified: / 07-09-2011 / 15:14:55 / cg" |
|
289 | 270 |
! ! |
271 |
||
272 |
!MCRepositoryBrowser class methodsFor:'menu specs'! |
|
273 |
||
472 | 274 |
loadingMenu |
275 |
"This resource specification was automatically generated |
|
276 |
by the MenuEditor of ST/X." |
|
277 |
||
278 |
"Do not manually edit this!! If it is corrupted, |
|
279 |
the MenuEditor may not be able to read the specification." |
|
280 |
||
281 |
||
282 |
" |
|
283 |
MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#loadingMenu |
|
284 |
(Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser loadingMenu)) startUp |
|
285 |
" |
|
286 |
||
287 |
<resource: #menu> |
|
288 |
||
289 |
^ |
|
290 |
#(Menu |
|
291 |
( |
|
292 |
(MenuItem |
|
293 |
label: 'Set Target Package...' |
|
294 |
itemValue: setTargetPackage |
|
295 |
translateLabel: true |
|
296 |
) |
|
297 |
(MenuItem |
|
298 |
label: 'Set Target Namespace...' |
|
299 |
itemValue: setTargetNamespace |
|
300 |
translateLabel: true |
|
301 |
) |
|
495 | 302 |
(MenuItem |
303 |
label: '-' |
|
304 |
) |
|
305 |
(MenuItem |
|
306 |
label: 'Update Changefile' |
|
307 |
translateLabel: true |
|
308 |
indication: updateChangefileHolder |
|
309 |
) |
|
472 | 310 |
) |
311 |
nil |
|
312 |
nil |
|
313 |
) |
|
314 |
! |
|
315 |
||
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
316 |
mainMenu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
317 |
"This resource specification was automatically generated |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
318 |
by the MenuEditor of ST/X." |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
319 |
|
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
320 |
"Do not manually edit this!! If it is corrupted, |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
321 |
the MenuEditor may not be able to read the specification." |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
322 |
|
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
323 |
|
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
324 |
" |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
325 |
MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#mainMenu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
326 |
(Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser mainMenu)) startUp |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
327 |
" |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
328 |
|
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
329 |
<resource: #menu> |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
330 |
|
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
331 |
^ |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
332 |
#(Menu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
333 |
( |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
334 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
335 |
label: 'File' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
336 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
337 |
submenu: |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
338 |
(Menu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
339 |
( |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
340 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
341 |
label: 'Exit' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
342 |
itemValue: closeRequest |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
343 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
344 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
345 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
346 |
nil |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
347 |
nil |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
348 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
349 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
350 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
351 |
label: 'Repository' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
352 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
353 |
submenuChannel: repositoryListMenu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
354 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
355 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
356 |
label: 'Package' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
357 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
358 |
submenuChannel: packageListMenu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
359 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
360 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
361 |
label: 'Version' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
362 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
363 |
submenuChannel: versionsMenu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
364 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
365 |
(MenuItem |
472 | 366 |
label: 'Loading' |
367 |
translateLabel: true |
|
368 |
submenuChannel: loadingMenu |
|
369 |
) |
|
370 |
(MenuItem |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
371 |
label: 'Help' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
372 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
373 |
startGroup: conditionalRight |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
374 |
submenu: |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
375 |
(Menu |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
376 |
( |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
377 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
378 |
label: 'Documentation' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
379 |
itemValue: openDocumentation |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
380 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
381 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
382 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
383 |
label: '-' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
384 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
385 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
386 |
label: 'About this Application...' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
387 |
itemValue: openAboutThisApplication |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
388 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
389 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
390 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
391 |
nil |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
392 |
nil |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
393 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
394 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
395 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
396 |
nil |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
397 |
nil |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
398 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
399 |
! |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
400 |
|
435 | 401 |
packageListMenu |
402 |
"This resource specification was automatically generated |
|
403 |
by the MenuEditor of ST/X." |
|
404 |
||
405 |
"Do not manually edit this!! If it is corrupted, |
|
406 |
the MenuEditor may not be able to read the specification." |
|
407 |
||
408 |
||
409 |
" |
|
410 |
MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#packageListMenu |
|
411 |
(Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser packageListMenu)) startUp |
|
412 |
" |
|
413 |
||
414 |
<resource: #menu> |
|
415 |
||
416 |
^ |
|
417 |
#(Menu |
|
418 |
( |
|
419 |
(MenuItem |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
420 |
enabled: packageSelectedAndOperatingSystemIsWindows |
468 | 421 |
label: 'No Menuentry Yet' |
435 | 422 |
translateLabel: true |
423 |
) |
|
424 |
) |
|
425 |
nil |
|
426 |
nil |
|
427 |
) |
|
468 | 428 |
|
429 |
"Modified: / 07-09-2011 / 11:44:38 / cg" |
|
435 | 430 |
! |
431 |
||
432 |
repositoryListMenu |
|
433 |
"This resource specification was automatically generated |
|
434 |
by the MenuEditor of ST/X." |
|
435 |
||
436 |
"Do not manually edit this!! If it is corrupted, |
|
437 |
the MenuEditor may not be able to read the specification." |
|
438 |
||
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
439 |
|
435 | 440 |
" |
441 |
MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#repositoryListMenu |
|
442 |
(Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser repositoryListMenu)) startUp |
|
443 |
" |
|
444 |
||
445 |
<resource: #menu> |
|
446 |
||
447 |
^ |
|
448 |
#(Menu |
|
449 |
( |
|
450 |
(MenuItem |
|
451 |
label: 'Add Repository...' |
|
452 |
itemValue: repositoryAdd |
|
453 |
translateLabel: true |
|
454 |
) |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
455 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
456 |
label: '-' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
457 |
) |
484 | 458 |
(MenuItem |
459 |
enabled: hasRepositorySelectedHolder |
|
460 |
label: 'Flush Cache' |
|
461 |
itemValue: repositoryFlushCache |
|
462 |
translateLabel: true |
|
463 |
) |
|
464 |
(MenuItem |
|
465 |
label: '-' |
|
466 |
) |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
467 |
(MenuItem |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
468 |
enabled: repositoryIsDirectory |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
469 |
label: 'Browse Directory' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
470 |
itemValue: repositoryBrowseDirectory |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
471 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
472 |
) |
516 | 473 |
(MenuItem |
474 |
label: '-' |
|
475 |
) |
|
476 |
(MenuItem |
|
477 |
label: 'Inspect' |
|
478 |
itemValue: repositoryInspect |
|
479 |
translateLabel: true |
|
480 |
) |
|
435 | 481 |
) |
482 |
nil |
|
483 |
nil |
|
484 |
) |
|
484 | 485 |
|
516 | 486 |
"Modified: / 25-11-2011 / 11:32:44 / cg" |
435 | 487 |
! |
488 |
||
289 | 489 |
versionsMenu |
490 |
"This resource specification was automatically generated |
|
491 |
by the MenuEditor of ST/X." |
|
492 |
||
493 |
"Do not manually edit this!! If it is corrupted, |
|
494 |
the MenuEditor may not be able to read the specification." |
|
495 |
||
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
496 |
|
289 | 497 |
" |
498 |
MenuEditor new openOnClass:MCRepositoryBrowser andSelector:#versionsMenu |
|
499 |
(Menu new fromLiteralArrayEncoding:(MCRepositoryBrowser versionsMenu)) startUp |
|
500 |
" |
|
501 |
||
502 |
<resource: #menu> |
|
503 |
||
504 |
^ |
|
505 |
#(Menu |
|
506 |
( |
|
507 |
(MenuItem |
|
472 | 508 |
enabled: hasVersionSelectedHolder |
289 | 509 |
label: 'Load' |
510 |
itemValue: versionLoad |
|
511 |
translateLabel: true |
|
512 |
) |
|
513 |
(MenuItem |
|
472 | 514 |
enabled: hasVersionSelectedHolder |
468 | 515 |
label: 'Load into Package...' |
289 | 516 |
itemValue: versionLoadIntoPackage |
517 |
translateLabel: true |
|
518 |
) |
|
519 |
(MenuItem |
|
520 |
label: '-' |
|
521 |
) |
|
522 |
(MenuItem |
|
523 |
enabled: hasVersionSelectedHolder |
|
524 |
label: 'Browse' |
|
525 |
itemValue: versionBrowser |
|
526 |
translateLabel: true |
|
527 |
) |
|
528 |
(MenuItem |
|
472 | 529 |
enabled: hasVersionSelectedHolder |
468 | 530 |
label: 'Browse Unloadable' |
289 | 531 |
itemValue: versionBrowseUnloadable |
532 |
translateLabel: true |
|
533 |
) |
|
534 |
(MenuItem |
|
535 |
label: '-' |
|
536 |
) |
|
537 |
(MenuItem |
|
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
538 |
enabled: hasVersionSelectedAndOperatingSystemIsWindowsHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
539 |
label: 'Show in Winzip' |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
540 |
itemValue: showPackageInWinZip |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
541 |
translateLabel: true |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
542 |
) |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
543 |
(MenuItem |
289 | 544 |
enabled: hasVersionSelectedHolder |
545 |
label: 'Inspect' |
|
546 |
itemValue: versionInspect |
|
547 |
translateLabel: true |
|
548 |
) |
|
549 |
) |
|
550 |
nil |
|
551 |
nil |
|
552 |
) |
|
553 |
! ! |
|
554 |
||
540 | 555 |
!MCRepositoryBrowser class methodsFor:'startup'! |
556 |
||
557 |
openOnPrimaryRepository |
|
558 |
"the primary repository is the one into which we checkin by default. |
|
559 |
(see MCSettingsApplication)" |
|
560 |
||
561 |
^ self openOnPrimaryRepositoryForPackage:nil |
|
562 |
||
563 |
"Created: / 03-12-2011 / 10:41:03 / cg" |
|
564 |
! |
|
565 |
||
566 |
openOnPrimaryRepositoryForPackage:anSTXPackageIdOrNil |
|
567 |
"the primary repository is the one into which we checkin by default. |
|
568 |
(see MCSettingsApplication)" |
|
569 |
||
570 |
|repository browser| |
|
571 |
||
572 |
repository := UserPreferences current at:#mcPrimaryRepository ifAbsent:nil. |
|
573 |
||
574 |
browser := self new. |
|
575 |
browser allButOpen. |
|
576 |
browser selectedRepository:repository. |
|
577 |
anSTXPackageIdOrNil notNil ifTrue:[ |
|
578 |
browser selectedPackage:anSTXPackageIdOrNil. |
|
579 |
]. |
|
580 |
browser openWindow. |
|
581 |
^ browser. |
|
582 |
||
583 |
"Created: / 03-12-2011 / 10:42:01 / cg" |
|
584 |
! ! |
|
585 |
||
289 | 586 |
!MCRepositoryBrowser methodsFor:'accessing'! |
587 |
||
540 | 588 |
selectedPackage:aPackageName |
589 |
|listEntry packageListApp| |
|
590 |
||
591 |
packageListApp := (builder componentAt:#PackageList) application. |
|
592 |
listEntry := packageListApp listHolder value detect:[:listEntry | listEntry name = aPackageName] ifNone:nil. |
|
593 |
packageListApp selectionHolder value:listEntry. |
|
594 |
||
595 |
"Created: / 04-12-2011 / 09:30:00 / cg" |
|
596 |
! |
|
597 |
||
598 |
selectedRepository:aRepository |
|
599 |
|rep fakeEntry listEntry repListApp| |
|
600 |
||
601 |
rep := self repositoriesHolder value detect:[:e | e = aRepository] ifNone:nil. |
|
602 |
rep notNil ifTrue:[ |
|
603 |
repListApp := (builder componentAt:#RepositoryList) application. |
|
604 |
fakeEntry := repListApp makeEntry:rep. |
|
605 |
listEntry := repListApp listHolder value detect:[:listEntry | listEntry repository = fakeEntry repository]. |
|
606 |
repListApp selectionHolder value:listEntry. |
|
607 |
] |
|
608 |
||
609 |
"Created: / 03-12-2011 / 10:44:16 / cg" |
|
610 |
! |
|
611 |
||
289 | 612 |
selectedVersion |
613 |
"return the value in 'selectedVersionHolder'" |
|
614 |
||
615 |
^ self selectedVersionHolder value |
|
540 | 616 |
|
617 |
"Modified (comment): / 04-12-2011 / 09:28:52 / cg" |
|
289 | 618 |
! |
619 |
||
620 |
selectedVersion: newValue |
|
621 |
"set the value in 'selectedVersionHolder'" |
|
622 |
||
623 |
self selectedVersionHolder value: newValue |
|
624 |
! |
|
625 |
||
626 |
selectedVersionAsMCVersion |
|
540 | 627 |
| entry | |
289 | 628 |
|
629 |
entry := self selectedVersionHolder value. |
|
630 |
^entry ifNil:[nil] ifNotNil:[entry asMCVersion]. |
|
631 |
||
632 |
"Created: / 13-10-2010 / 17:48:05 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
540 | 633 |
"Modified (format): / 04-12-2011 / 09:29:01 / cg" |
289 | 634 |
! ! |
635 |
||
636 |
!MCRepositoryBrowser methodsFor:'aspect-queries'! |
|
637 |
||
484 | 638 |
hasRepositorySelectedHolder |
639 |
^ BlockValue |
|
640 |
with:[:h | h value notNil] |
|
641 |
argument:(self selectedRepositoryHolder) |
|
642 |
||
643 |
"Created: / 13-10-2010 / 17:08:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
644 |
"Modified: / 07-09-2011 / 13:14:17 / cg" |
|
645 |
"Created: / 07-09-2011 / 15:00:44 / cg" |
|
646 |
! |
|
647 |
||
460
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
648 |
hasVersionSelectedAndOperatingSystemIsWindowsHolder |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
649 |
^[self hasVersionSelectedHolder value |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
650 |
and:[ OperatingSystem isMSWINDOWSlike ]] |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
651 |
|
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
652 |
"Created: / 25-08-2011 / 08:49:24 / cg" |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
653 |
! |
46f1637ee276
give it a more professional look (unfinished)
Claus Gittinger <cg@exept.de>
parents:
435
diff
changeset
|
654 |
|
289 | 655 |
hasVersionSelectedHolder |
472 | 656 |
^ BlockValue |
657 |
with:[:h | h value notNil] |
|
658 |
argument:(self selectedVersionHolder) |
|
289 | 659 |
|
660 |
"Created: / 13-10-2010 / 17:08:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
472 | 661 |
"Modified: / 07-09-2011 / 13:14:17 / cg" |
463 | 662 |
! |
663 |
||
664 |
repositoryIsDirectory |
|
665 |
^ BlockValue |
|
484 | 666 |
with:[:h | h value notNil |
667 |
and:[ h value repository isKindOf: MCDirectoryRepository ]] |
|
463 | 668 |
argument:[ self selectedRepositoryHolder ] |
669 |
||
670 |
"Created: / 31-08-2011 / 09:08:54 / cg" |
|
289 | 671 |
! ! |
672 |
||
673 |
!MCRepositoryBrowser methodsFor:'aspects'! |
|
674 |
||
675 |
packagesHolder |
|
676 |
packagesHolder isNil ifTrue:[ |
|
677 |
packagesHolder := ValueHolder new. |
|
678 |
]. |
|
679 |
^ packagesHolder |
|
540 | 680 |
|
681 |
"Modified (comment): / 04-12-2011 / 09:27:57 / cg" |
|
289 | 682 |
! |
683 |
||
684 |
packagesHolder:something |
|
540 | 685 |
packagesHolder := something. |
289 | 686 |
|
540 | 687 |
"Modified (comment): / 04-12-2011 / 09:28:01 / cg" |
289 | 688 |
! |
689 |
||
690 |
repositoriesHolder |
|
691 |
repositoriesHolder isNil ifTrue:[ |
|
463 | 692 |
repositoriesHolder := ValueHolder with:(MCRepositoryGroup default repositories). |
289 | 693 |
]. |
694 |
^ repositoriesHolder |
|
695 |
||
696 |
"Modified: / 16-09-2010 / 18:33:42 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
540 | 697 |
"Modified (comment): / 04-12-2011 / 09:28:06 / cg" |
289 | 698 |
! |
699 |
||
700 |
repositoriesHolder:something |
|
540 | 701 |
repositoriesHolder := something. |
702 |
||
703 |
"Modified (comment): / 04-12-2011 / 09:28:09 / cg" |
|
704 |
! |
|
289 | 705 |
|
540 | 706 |
selectedPackageHolder |
707 |
selectedPackageHolder isNil ifTrue:[ |
|
708 |
selectedPackageHolder := nil asValue. |
|
709 |
]. |
|
710 |
^ selectedPackageHolder |
|
711 |
||
712 |
"Created: / 04-12-2011 / 09:27:50 / cg" |
|
289 | 713 |
! |
714 |
||
463 | 715 |
selectedRepositoryHolder |
716 |
selectedRepositoryHolder isNil ifTrue:[ |
|
717 |
selectedRepositoryHolder := nil asValue. |
|
718 |
]. |
|
719 |
^ selectedRepositoryHolder |
|
720 |
||
721 |
"Created: / 31-08-2011 / 09:09:56 / cg" |
|
722 |
! |
|
723 |
||
289 | 724 |
selectedVersionDetailsHolder |
725 |
<resource: #uiAspect> |
|
726 |
||
727 |
selectedVersionDetailsHolder isNil ifTrue:[ |
|
728 |
selectedVersionDetailsHolder := '' asValue. |
|
729 |
]. |
|
730 |
^ selectedVersionDetailsHolder. |
|
731 |
||
732 |
"Modified: / 17-09-2010 / 15:17:26 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
540 | 733 |
"Modified (comment): / 03-12-2011 / 11:08:52 / cg" |
289 | 734 |
! |
735 |
||
736 |
selectedVersionHolder |
|
737 |
selectedVersionHolder isNil ifTrue:[ |
|
738 |
selectedVersionHolder := ValueHolder with:nil "defaultValue here". |
|
739 |
selectedVersionHolder onChangeSend: #updateVersionDetails to: self. |
|
740 |
]. |
|
741 |
^ selectedVersionHolder |
|
742 |
||
743 |
"Modified: / 17-09-2010 / 15:23:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
540 | 744 |
"Modified (comment): / 04-12-2011 / 09:28:21 / cg" |
289 | 745 |
! |
746 |
||
747 |
selectedVersionHolder:something |
|
748 |
selectedVersionHolder := something. |
|
749 |
! |
|
750 |
||
485 | 751 |
targetNamespaceNameHolder |
752 |
<resource: #uiAspect> |
|
753 |
||
754 |
targetNamespaceNameHolder isNil ifTrue:[ |
|
755 |
targetNamespaceNameHolder := ValueHolder new. |
|
756 |
]. |
|
757 |
^ targetNamespaceNameHolder. |
|
540 | 758 |
|
759 |
"Modified (comment): / 03-12-2011 / 11:09:03 / cg" |
|
485 | 760 |
! |
761 |
||
762 |
targetPackageHolder |
|
763 |
<resource: #uiAspect> |
|
764 |
||
765 |
targetPackageHolder isNil ifTrue:[ |
|
766 |
targetPackageHolder := ValueHolder new. |
|
767 |
]. |
|
768 |
^ targetPackageHolder. |
|
540 | 769 |
|
770 |
"Modified (comment): / 03-12-2011 / 11:09:09 / cg" |
|
485 | 771 |
! |
772 |
||
495 | 773 |
updateChangefileHolder |
774 |
updateChangefileHolder isNil ifTrue:[ |
|
775 |
updateChangefileHolder := false asValue. |
|
776 |
]. |
|
777 |
^ updateChangefileHolder |
|
778 |
||
779 |
"Created: / 07-09-2011 / 15:54:03 / cg" |
|
780 |
! |
|
781 |
||
289 | 782 |
versionsHolder |
783 |
versionsHolder isNil ifTrue:[ |
|
784 |
versionsHolder := ValueHolder new. |
|
785 |
]. |
|
786 |
^ versionsHolder |
|
540 | 787 |
|
788 |
"Modified (comment): / 04-12-2011 / 09:28:30 / cg" |
|
289 | 789 |
! |
790 |
||
791 |
versionsHolder:something |
|
540 | 792 |
versionsHolder := something. |
289 | 793 |
|
540 | 794 |
"Modified (comment): / 04-12-2011 / 09:28:33 / cg" |
289 | 795 |
! ! |
796 |
||
797 |
!MCRepositoryBrowser methodsFor:'menu actions'! |
|
798 |
||
463 | 799 |
repositoryAdd |
800 |
|repStr rep url files| |
|
801 |
||
802 |
repStr := Dialog request:'Reporitory to add:'. |
|
803 |
repStr isEmptyOrNil ifTrue:[^ self]. |
|
804 |
||
805 |
url := URL fromString:repStr. |
|
806 |
url method = 'http' ifTrue:[ |
|
807 |
rep := MCHttpRepository |
|
808 |
location: repStr |
|
809 |
user: '' |
|
810 |
password: '' |
|
811 |
] ifFalse:[ |
|
812 |
url isFileScheme ifTrue:[ |
|
813 |
rep := MCDirectoryRepository directory:repStr. |
|
814 |
]. |
|
815 |
]. |
|
816 |
rep isNil ifTrue:[ |
|
817 |
Dialog warn:'cannot figure out access scheme.'. |
|
818 |
^ self. |
|
819 |
]. |
|
820 |
Error handle:[:ex | |
|
821 |
] do:[ |
|
822 |
files := rep allFileNames. |
|
823 |
]. |
|
824 |
files isNil ifTrue:[ |
|
825 |
Dialog warn:'repository does not exist or is inaccessable.'. |
|
826 |
^ self. |
|
827 |
]. |
|
828 |
||
829 |
MCRepositoryGroup default addRepository:rep. |
|
830 |
self repositoriesHolder value:(MCRepositoryGroup default repositories) |
|
831 |
||
832 |
"Created: / 29-08-2011 / 12:25:40 / cg" |
|
833 |
! |
|
834 |
||
835 |
repositoryBrowseDirectory |
|
836 |
"open a filebrowser on the seleccted directory-repository" |
|
837 |
||
838 |
|fn| |
|
839 |
||
840 |
fn := self selectedRepositoryHolder value repository directory asFilename. |
|
841 |
fn exists ifFalse:[ |
|
842 |
Dialog warn:'No such directory'. |
|
843 |
^ self. |
|
844 |
]. |
|
845 |
UserPreferences current fileBrowserClass openIn:fn |
|
846 |
||
847 |
"Created: / 31-08-2011 / 09:16:33 / cg" |
|
848 |
! |
|
849 |
||
484 | 850 |
repositoryFlushCache |
851 |
"flush the repository cache - useful only in case of an aborted file load" |
|
852 |
||
853 |
self selectedRepositoryHolder value repository flushCache |
|
854 |
||
855 |
"Created: / 07-09-2011 / 15:02:21 / cg" |
|
856 |
! |
|
857 |
||
516 | 858 |
repositoryInspect |
859 |
"for debugging" |
|
860 |
||
861 |
self selectedRepositoryHolder value repository inspect |
|
862 |
||
863 |
"Created: / 25-11-2011 / 11:33:09 / cg" |
|
864 |
! |
|
865 |
||
472 | 866 |
setTargetNamespace |
867 |
"specify an st/x namespace to be used as default" |
|
868 |
||
869 |
| nsName | |
|
870 |
||
871 |
nsName := Dialog |
|
872 |
requestNameSpace:'Namepace to load code into:' |
|
873 |
initialAnswer:targetNamespace. |
|
874 |
nsName isEmptyOrNil ifTrue:[^self]. |
|
875 |
||
876 |
targetNamespace := nsName. |
|
485 | 877 |
self targetNamespaceNameHolder value:('Target-Namespace: ',targetNamespace). |
472 | 878 |
|
879 |
"Created: / 07-09-2011 / 12:49:42 / cg" |
|
880 |
! |
|
881 |
||
882 |
setTargetPackage |
|
883 |
"specify an st/x package identifier to be used as default" |
|
884 |
||
885 |
| package | |
|
886 |
||
887 |
package := Dialog |
|
888 |
requestProject:'Default Smalltalk/X package to load code into:' |
|
889 |
initialAnswer:targetPackage |
|
890 |
suggestions:#(). |
|
891 |
package ifNil:[^self]. |
|
892 |
||
893 |
targetPackage := lastPackage := package. |
|
485 | 894 |
self targetPackageHolder value:('Target-Package: ',targetPackage). |
472 | 895 |
|
896 |
"Created: / 07-09-2011 / 12:47:15 / cg" |
|
897 |
! |
|
898 |
||
468 | 899 |
showPackageInWinZip |
900 |
| entry tempFile fileStream| |
|
901 |
||
902 |
tempFile := Filename newTemporary withSuffix:'zip'. |
|
903 |
||
472 | 904 |
self withReadCursorDo:[ |
905 |
entry := self selectedVersionHolder value. |
|
906 |
entry repository |
|
907 |
readStreamForFileNamed:entry name do:[:s | |
|
908 |
fileStream := tempFile writeStream. |
|
909 |
s reset. |
|
910 |
s copyToEndInto:fileStream. |
|
911 |
fileStream close. |
|
912 |
]. |
|
913 |
]. |
|
468 | 914 |
|
915 |
Win32OperatingSystem |
|
916 |
openApplicationForDocument:tempFile operation:#open |
|
917 |
||
918 |
"Created: / 07-09-2011 / 11:46:08 / cg" |
|
919 |
! |
|
920 |
||
289 | 921 |
versionBrowseUnloadable |
922 |
||
923 |
| version snapshot loader unloadables | |
|
924 |
version := self selectedVersionAsMCVersion. |
|
925 |
version ifNil:[^self]. |
|
926 |
snapshot := version snapshot. |
|
927 |
loader := MCPackageLoader new |
|
928 |
installSnapshot: snapshot; |
|
929 |
yourself. |
|
930 |
loader analyze. |
|
931 |
unloadables := ChangeSet withAll: |
|
932 |
(loader unloadableDefinitions collect: |
|
933 |
[:def|def asChange]). |
|
934 |
||
432
e66073959001
csbrowser2 in: #versionBrowseUnloadable
Claus Gittinger <cg@exept.de>
parents:
291
diff
changeset
|
935 |
(Tools::ChangeSetBrowser2 |
503 | 936 |
on: unloadables |
937 |
label: version info name , ' (unloadable definitions)') |
|
289 | 938 |
beTwoColumn; |
503 | 939 |
targetNamespace:targetNamespace; |
940 |
targetPackage:targetPackage; |
|
289 | 941 |
open |
942 |
||
943 |
"Modified: / 26-10-2010 / 23:04:45 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
503 | 944 |
"Modified: / 07-09-2011 / 20:17:15 / cg" |
289 | 945 |
! |
946 |
||
947 |
versionBrowser |
|
948 |
||
949 |
| version snapshot | |
|
462
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
950 |
|
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
951 |
self withWaitCursorDo:[ |
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
952 |
version := self selectedVersionAsMCVersion. |
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
953 |
version ifNil:[^self]. |
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
954 |
snapshot := version snapshot. |
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
955 |
(Tools::ChangeSetBrowser2 |
503 | 956 |
on: snapshot asChangeSet |
957 |
label: version info name) |
|
462
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
958 |
beTwoColumn; |
503 | 959 |
targetNamespace:targetNamespace; |
960 |
targetPackage:targetPackage; |
|
462
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
961 |
open |
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
962 |
]. |
289 | 963 |
|
964 |
"Modified: / 04-08-2011 / 19:03:51 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
503 | 965 |
"Modified: / 07-09-2011 / 20:17:36 / cg" |
289 | 966 |
! |
967 |
||
968 |
versionInspect |
|
969 |
||
970 |
| v | |
|
971 |
v := self selectedVersionAsMCVersion. |
|
972 |
v ifNotNil:[v inspect] |
|
973 |
||
974 |
"Modified: / 13-10-2010 / 17:48:32 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
975 |
! |
|
976 |
||
977 |
versionLoad |
|
472 | 978 |
"load into the default (or previously set) package" |
289 | 979 |
|
462
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
980 |
| entry | |
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
981 |
|
289 | 982 |
entry := self selectedVersionHolder value. |
472 | 983 |
entry notNil ifTrue:[ |
484 | 984 |
self withWaitCursorDo:[ |
985 |
self versionLoad: entry asMCVersion into:(targetPackage ? PackageId noProjectID) |
|
986 |
] |
|
472 | 987 |
]. |
289 | 988 |
|
989 |
"Modified: / 09-11-2010 / 13:26:27 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
484 | 990 |
"Modified: / 07-09-2011 / 14:51:57 / cg" |
289 | 991 |
! |
992 |
||
993 |
versionLoad: version into: package |
|
994 |
||
462
bc04bf43bf7a
comment/format in: #versionLoad
Claus Gittinger <cg@exept.de>
parents:
460
diff
changeset
|
995 |
self withWaitCursorDo:[ |
472 | 996 |
MCStXNamespaceQuery |
502 | 997 |
answer:(NameSpace name:targetNamespace ? 'Smalltalk') |
472 | 998 |
do: [ |
999 |
MCStXPackageQuery |
|
1000 |
answer: package |
|
1001 |
do: [ |
|
1002 |
MCInteractiveLoadingQuery answer: true do:[ |
|
495 | 1003 |
updateChangefileHolder value ifTrue:[ |
1004 |
version load |
|
1005 |
] ifFalse:[ |
|
1006 |
Class withoutUpdatingChangesDo:[ |
|
1007 |
version load |
|
1008 |
] |
|
1009 |
]. |
|
472 | 1010 |
] |
1011 |
]. |
|
1012 |
]. |
|
289 | 1013 |
]. |
1014 |
||
1015 |
"Created: / 09-11-2010 / 13:25:53 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
1016 |
"Modified: / 06-03-2011 / 20:44:15 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
502 | 1017 |
"Modified: / 07-09-2011 / 20:16:19 / cg" |
289 | 1018 |
! |
1019 |
||
1020 |
versionLoadIntoPackage |
|
472 | 1021 |
"specify an st/x package identifier" |
289 | 1022 |
|
1023 |
| version package | |
|
472 | 1024 |
|
289 | 1025 |
version := self selectedVersionAsMCVersion. |
1026 |
version ifNil:[^self]. |
|
472 | 1027 |
|
289 | 1028 |
package := Dialog |
1029 |
requestProject:'Smalltalk/X package to load code into' |
|
472 | 1030 |
initialAnswer:lastPackage |
1031 |
suggestions:#(). |
|
289 | 1032 |
package ifNil:[^self]. |
472 | 1033 |
|
1034 |
lastPackage := package. |
|
289 | 1035 |
self versionLoad: version into: package |
1036 |
||
1037 |
"Modified: / 09-11-2010 / 13:33:47 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
472 | 1038 |
"Modified: / 07-09-2011 / 12:47:51 / cg" |
289 | 1039 |
! ! |
1040 |
||
1041 |
!MCRepositoryBrowser methodsFor:'updating'! |
|
1042 |
||
1043 |
updateVersionDetails |
|
540 | 1044 |
| versionEntry version | |
289 | 1045 |
|
1046 |
worker ifNotNil:[worker terminate. worker := nil]. |
|
1047 |
versionEntry := self selectedVersion. |
|
1048 |
versionEntry ifNil:[selectedVersionDetailsHolder value:'No version selected'. ^self]. |
|
540 | 1049 |
"/ async is not a good idea - if it takes long, user might start to click around... |
1050 |
"/ worker := |
|
1051 |
"/ [[selectedVersionDetailsHolder value:'Reading ',versionEntry name,'...'. |
|
1052 |
"/ version := versionEntry asMCVersion. |
|
1053 |
"/ version ifNotNil: |
|
1054 |
"/ [selectedVersionDetailsHolder value: version summary]] ensure:[worker := nil]] newProcess. |
|
1055 |
"/ worker resume. |
|
1056 |
||
1057 |
self withWaitCursorDo:[ |
|
1058 |
selectedVersionDetailsHolder value:'Reading ',versionEntry name,'...'. |
|
289 | 1059 |
version := versionEntry asMCVersion. |
540 | 1060 |
version ifNotNil:[ |
1061 |
selectedVersionDetailsHolder value: version summary |
|
1062 |
] |
|
1063 |
]. |
|
289 | 1064 |
|
1065 |
"Created: / 17-09-2010 / 15:23:41 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
1066 |
"Modified: / 26-10-2010 / 22:08:43 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
540 | 1067 |
"Modified (comment): / 03-12-2011 / 11:11:28 / cg" |
289 | 1068 |
! ! |
1069 |
||
1070 |
!MCRepositoryBrowser class methodsFor:'documentation'! |
|
1071 |
||
1072 |
version |
|
540 | 1073 |
^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.16 2011-12-04 14:44:23 cg Exp $' |
289 | 1074 |
! |
1075 |
||
1076 |
version_CVS |
|
540 | 1077 |
^ '$Header: /cvs/stx/stx/goodies/monticello/MCRepositoryBrowser.st,v 1.16 2011-12-04 14:44:23 cg Exp $' |
289 | 1078 |
! |
1079 |
||
1080 |
version_SVN |
|
1081 |
^ '§Id: MCRepositoryBrowser.st 34 2011-08-04 21:44:46Z vranyj1 §' |
|
1082 |
! ! |