author | Claus Gittinger <cg@exept.de> |
Fri, 26 Jul 2013 17:10:27 +0200 | |
changeset 13225 | efbc399a9a53 |
parent 13168 | 8de8aa65df94 |
child 13289 | cc75e3cd0362 |
child 13805 | 538d93a2f75d |
permissions | -rw-r--r-- |
9996 | 1 |
" |
2 |
COPYRIGHT (c) 2006 by eXept Software AG |
|
3 |
All Rights Reserved |
|
4 |
||
5 |
This software is furnished under a license and may be used |
|
6 |
only in accordance with the terms of that license and with the |
|
7 |
inclusion of the above copyright notice. This software may not |
|
8 |
be provided or otherwise made available to, or used by, any |
|
9 |
other person. No title to or ownership of the software is |
|
10 |
hereby transferred. |
|
11 |
" |
|
12 |
"{ Package: 'stx:libtool' }" |
|
8779 | 13 |
|
14 |
"{ NameSpace: Tools }" |
|
15 |
||
16 |
ApplicationModel subclass:#Inspector2 |
|
10379 | 17 |
instanceVariableNames:'tabViewAspect navigationHistoryHolder navigationStateAspect |
11142 | 18 |
browser currentObjectHolder colorProfileHolder |
19 |
toolbarBackgroundHolder' |
|
20 |
classVariableNames:'LastExtent ColorProfiles' |
|
8779 | 21 |
poolDictionaries:'' |
10460 | 22 |
category:'Interface-Inspector2' |
8779 | 23 |
! |
24 |
||
10597 | 25 |
Model subclass:#NavigationState |
8779 | 26 |
instanceVariableNames:'theObject index tabs selectionIndex displayString' |
27 |
classVariableNames:'' |
|
28 |
poolDictionaries:'' |
|
29 |
privateIn:Inspector2 |
|
30 |
! |
|
31 |
||
9996 | 32 |
!Inspector2 class methodsFor:'documentation'! |
33 |
||
34 |
copyright |
|
35 |
" |
|
36 |
COPYRIGHT (c) 2006 by eXept Software AG |
|
37 |
All Rights Reserved |
|
38 |
||
39 |
This software is furnished under a license and may be used |
|
40 |
only in accordance with the terms of that license and with the |
|
41 |
inclusion of the above copyright notice. This software may not |
|
42 |
be provided or otherwise made available to, or used by, any |
|
43 |
other person. No title to or ownership of the software is |
|
44 |
hereby transferred. |
|
45 |
" |
|
10597 | 46 |
! |
47 |
||
11928 | 48 |
documentation |
10597 | 49 |
" |
50 |
an application for a multitab inspector |
|
51 |
extendable by the inspected object itself, by providing additional |
|
52 |
tabs via the inspector2XXX methods |
|
53 |
||
54 |
[author:] |
|
55 |
Jan Vrani |
|
56 |
" |
|
57 |
! ! |
|
58 |
||
11142 | 59 |
!Inspector2 class methodsFor:'initialization'! |
60 |
||
61 |
initialize |
|
62 |
"Invoked at system start or when the class is dynamically loaded." |
|
63 |
||
64 |
"/ please change as required (and remove this comment) |
|
65 |
||
66 |
||
67 |
ColorProfiles := Dictionary new. |
|
68 |
ColorProfiles |
|
69 |
at: #default put: nil; "default color" |
|
70 |
at: #red put: Color red lighter lighter; |
|
71 |
at: #green put: Color green lighter; |
|
72 |
at: #blue put: Color blue lighter; |
|
73 |
at: #yellow put: Color yellow lighter; |
|
74 |
at: #gray put: Color gray; |
|
75 |
yourself. |
|
76 |
||
77 |
"Modified: / 17-01-2012 / 12:57:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
78 |
! ! |
|
79 |
||
10597 | 80 |
!Inspector2 class methodsFor:'help specs'! |
81 |
||
82 |
flyByHelpSpec |
|
83 |
"This resource specification was automatically generated |
|
84 |
by the UIHelpTool of ST/X." |
|
85 |
||
86 |
"Do not manually edit this!! If it is corrupted, |
|
87 |
the UIHelpTool may not be able to read the specification." |
|
88 |
||
89 |
" |
|
90 |
UIHelpTool openOnClass:Tools::Inspector2 |
|
91 |
" |
|
92 |
||
93 |
<resource: #help> |
|
94 |
||
95 |
^ super flyByHelpSpec addPairsFrom:#( |
|
96 |
||
97 |
#backwardInVisitingHistory |
|
98 |
'Move backward in the history of previously visited objects' |
|
99 |
||
100 |
#browseClassOfShownObject |
|
11134 | 101 |
'Open a SystemBrowser on the shown object''s class' |
10597 | 102 |
|
103 |
#browseFile |
|
11134 | 104 |
'Open a FileBrowser on the file represented by the shown object' |
105 |
||
106 |
#editImage |
|
107 |
'Open an ImageEditor on the bitmap/image represented by the shown object' |
|
10597 | 108 |
|
109 |
#forwardInVisitingHistory |
|
110 |
'Move forward in the history of previously visited objects' |
|
111 |
||
11160 | 112 |
#colorProfile |
113 |
'Change the color profile' |
|
114 |
||
115 |
#refresh |
|
116 |
'Refresh for changed object' |
|
10597 | 117 |
|
118 |
) |
|
119 |
||
120 |
"Created: / 19-08-2011 / 08:52:33 / cg" |
|
11265 | 121 |
! |
122 |
||
123 |
helpSpec |
|
124 |
"This resource specification was automatically generated |
|
125 |
by the UIHelpTool of ST/X." |
|
126 |
||
127 |
"Do not manually edit this!! If it is corrupted, |
|
128 |
the UIHelpTool may not be able to read the specification." |
|
129 |
||
130 |
" |
|
131 |
UIHelpTool openOnClass:Tools::Inspector2 |
|
132 |
" |
|
133 |
||
134 |
<resource: #help> |
|
135 |
||
136 |
^ super helpSpec addPairsFrom:#( |
|
137 |
||
138 |
#colorProfile |
|
139 |
'' |
|
140 |
||
141 |
) |
|
9996 | 142 |
! ! |
8779 | 143 |
|
11142 | 144 |
!Inspector2 class methodsFor:'image specs'! |
145 |
||
146 |
settingsIcon |
|
147 |
||
11161 | 148 |
^self settingsIcon5 |
11142 | 149 |
|
150 |
"Modified: / 17-01-2012 / 12:45:40 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
11161 | 151 |
"Modified: / 19-01-2012 / 14:00:35 / cg" |
11142 | 152 |
! |
153 |
||
154 |
settingsIcon1 |
|
155 |
"This resource specification was automatically generated |
|
156 |
by the ImageEditor of ST/X." |
|
157 |
||
158 |
"Do not manually edit this!! If it is corrupted, |
|
159 |
the ImageEditor may not be able to read the specification." |
|
160 |
||
161 |
" |
|
162 |
self settingsIcon inspect |
|
163 |
ImageEditor openOnClass:self andSelector:#settingsIcon |
|
164 |
Icon flushCachedIcons |
|
165 |
" |
|
166 |
||
167 |
<resource: #image> |
|
168 |
||
169 |
^Icon |
|
170 |
constantNamed:'Tools::Inspector2 class settingsIcon' |
|
171 |
ifAbsentPut:[(Depth24Image new) width: 24; height: 24; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:' |
|
172 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
173 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@[G*LY'':\Y'':\Y'':\Y'':\Y'':\Y'':\Y'':\Y'':\Y''6\ |
|
174 |
YW6[YG.ZX7.YX7*YX7*YX7*YX7.YYG.ZYW6[[G*L@@@@@@@@@@@@@@@@YW6["Y:4"Y:4"Y:4"9>4#*F4$JJ4$*N5$:R5$*N4#Y>2!!)&/_9R,^)F+^H>*]8>* |
|
175 |
^YF+_YR- 9&0YG2Z@@@@@@@@@@@@@@@@YW6[!!I.2!!923"):3#JB3#*B3#*F3#*F4#:F4#I>3!!9*0)J65)J65)J65)J65)J65)J65)J65^YF,X7*Y@@@@@@@@ |
|
176 |
@@@@@@@@YW6[ 9&1!!)*1!!9.1!!921!!921!!9.1!!9.1!!9.1!!)*1 YZ.]86()J65.[&9.[&9.[&9.[&9.[&9[8&(X''*X@@@@@@@@@@@@@@@@YG2Z_)V._YV-_IR- |
|
177 |
^9R.^9R.^9R.^9R.^9R.^)N-](>*[HZ%XG.](:24.K"8.K"8.K"8.K"8ZHN#XW"W@@@@@@@@@@@@@@@@YG2Z]H:+\8:+\X:,\(>,\(>,\(>,\(>,\X:+[82* |
|
178 |
Z(^''X'': (:24.K"8.K"8.K"8.K"8.K"8YG>!!XW"W@@@@@@@@@@@@@@@@X7.YZ8"(ZX*)ZX*)ZX*)ZX*)ZX*)ZX*)ZX&)YXV&W7:!!(*.3-;^7-;^7-;^7-;^7 |
|
179 |
-;^7-;^7XG6 XG^V@@@@@@@@@@@@@@@@X7.YY(N&X8Z(X8Z(X8Z(X8Z(X8Z(X8Z(X(R(W8B$(*.3-;^7-;^7-;^7-;^7T''BX-;^7-;^7WG2 XG"V@@@@@@@@ |
|
180 |
@@@@@@@@X7.YXW>$W8R(W8R(W8R(W8R(W8R(W8R(W(N''WHB$U''&_-;^7-;^7-;^7UGV\U''"_U''&_-;^7V'':#XW"W@@@@@@@@@@@@@@@@X''*XW''2"WHJ''WHJ'' |
|
181 |
WHJ''WHJ''V(B&VG:%VW>&V(B&U7.#T7^_-+Z6T7^_U''."VG6$VG:$VG6$VW>%XW&W@@@@@@@@@@@@@@@@X''*XV''& U7>&VXF''V(N(VXF''T7&!!(Z*2T7&!!VHB'' |
|
182 |
VXF''U7>%U''6$U7>%VXF''V(J(V(J(VXF''V(J(X''&X@@@@@@@@@@@@@@@@X''*XV7"_(Z*2UW2#VXJ''UW2#(Z*2-+Z6-+Z6UW2#V(N(V8V*V8R)V8V*V(V*V8V* |
|
183 |
V8Z*WHZ*V8Z*X''*X@@@@@@@@@@@@@@@@X''*XWW* (Z*2(Z*2UW*!!(Z*2-+Z6-+Z6-+Z6-+Z6W8^+X82.X82.X82.X82.X82.X82.X82.X8.-X''*X@@@@@@@@ |
|
184 |
@@@@@@@@XW&WXW6"(J&1-[V5(J&1-[V5-[V5-[V5-[V5XXZ''Z(>-[IF/[IF/[IF/[IF/[IF/[IF/[IF/W(..XW&W@@@@@@@@@@@@@@@@XW&WY(J%(J&1-[V5 |
|
185 |
-[V5-[V5-[V5-[V5ZX.(\)V/]Y^1]Y^1]Y^1]Y^1]Y^1]Y^1]Y^1]Y^1W(:1XW&W@@@@@@@@@@@@@@@@XG"VZ(V&'':"0-KR4-KR4-KR4-KR4Y(Z$])V-_I*1 |
|
186 |
_I*1_I*1_I*1_I*1_I*1_I*1_I*1^9*1WX>1XG"V@@@@@@@@@@@@@@@@XG"V[H^'''':"0-KR4-KR4-KR4-KR4-KR4\(>(_Y*/ I61 I61 I61 I61 I61 I61 |
|
187 |
I21 I21XH>1XG"V@@@@@@@@@@@@@@@@XG"V[(**'':"0-KR4-KR4-KR4-KR4-KR4-KR4^)^. I61 I61 I61 I61 I61_961_961_921Y(:0XG"V@@@@@@@@ |
|
188 |
@@@@@@@@W7^U\H2,[(&)[X"''[(&''[(&''[8&''\H*''\(2)]9F,^)N.^YJ.^YJ.^IF.]YB.\(:-\H6-[X2-[H.-W7^U@@@@@@@@@@@@@@@@X''BBW7^UW7^UW7^U |
|
189 |
W7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UW7^UXF:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
190 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
191 |
@@@@@@@@@@@@@@@@@@@@@@@@') ; mask:((Depth1Image new) width: 24; height: 24; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<@@@@@@@@') ; yourself); yourself] |
|
192 |
||
193 |
"Created: / 17-01-2012 / 12:45:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
194 |
! |
|
195 |
||
196 |
settingsIcon2 |
|
197 |
"This resource specification was automatically generated |
|
198 |
by the ImageEditor of ST/X." |
|
199 |
||
200 |
"Do not manually edit this!! If it is corrupted, |
|
201 |
the ImageEditor may not be able to read the specification." |
|
202 |
||
203 |
" |
|
204 |
self settingsIcon2 inspect |
|
205 |
ImageEditor openOnClass:self andSelector:#settingsIcon2 |
|
206 |
Icon flushCachedIcons |
|
207 |
" |
|
208 |
||
209 |
<resource: #image> |
|
210 |
||
211 |
^Icon |
|
212 |
constantNamed:'Tools::Inspector2 class settingsIcon2' |
|
213 |
ifAbsentPut:[(Depth24Image new) width: 24; height: 24; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:' |
|
214 |
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU |
|
215 |
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU"9J["IR#"IR#"IR#"IR#"IR#"IR#"IR#"IR#"IN# |
|
216 |
!!9N"!!9J"!!)J!!!!)J!!!!)J!!!!)J!!!!)J!!!!9J"!!9N""9J[UUUUUUUUUUUUUUUU!!9N"&ZR/&ZR/&ZR/&*R/''JV/''ZZ/''*Z/''*^/''*Z/&:R.&JF,%I>+$)6*$Y2*$I2* |
|
217 |
$Y6*$9>+%*F-!!9N"UUUUUUUUUUUUUUUU!!9N"%:J.&JN.&*R.&:V.''JV.''JV.''JV/''JV/&:R.&JJ-4][Z4][Z4][Z4][Z4][Z4][Z4][Z$Y6+!!)J!!UUUUUUUU |
|
218 |
UUUUUUUU!!9N"%*F-&JJ-&JJ-&JN-&JN-&JJ-&JJ-&JJ-&JJ-%ZB,$I.)4][Z7M3\7M3\7M3\7M3\7M3\#I&)!!)J!!UUUUUUUUUUUUUUUU!!9N"%I>,$9>+$9>+ |
|
219 |
$)>,$)>,$)>,$)>,$)>,$):+$I2*"9"''!!YJ#)*./6=/[6=/[6=/[6=/["YZ&!!YF UUUUUUUUUUUUUUUU!!9N"#92*#)2*#Y2+#)2+#)2+#)2+#)2+#Y2*#I.* |
|
220 |
")"(!!)R%)*./6=/[6=/[6=/[6=/[6=/[!!9R%!!YF UUUUUUUUUUUUUUUU!!)J!!")&)"Y*)"Y*)"Y*)"Y*)"Y*)"Y*)"Y&)!!9^(!!IR%)**.6=/[6=/[6=/[6=/[ |
|
221 |
6=/[6=/[!!YN%!!YB UUUUUUUUUUUUUUUU!!)J!!"IZ(!!)")!!)")!!)")!!)")!!)")!!)")!!)^)!!IV'')**.6=/[6=/[6=/[6=/[_(6!!6=/[6=/[ 9N%!!YF UUUUUUUU |
|
222 |
UUUUUUUU!!)J!!!!YR''!!I^)!!I^)!!I^)!!I^)!!I^)!!I^)!!IZ( 9V'' IF$6=/[6=/[6=/[_8># IF$ IF$6=/[ )R&!!YF UUUUUUUUUUUUUUUU!!)J!!!!IN& 9Z( 9Z( |
|
223 |
9Z( 9Z( )V( YR'' YR( )V( IJ&_)B$6-+Z_)B$ IJ& YN'' YR'' YN'' YR''!!YF UUUUUUUUUUUUUUUU!!)J!! )F% IR( YV( )Z) YV(_)F%)Z*._)F% YV( |
|
224 |
YV( IR'' IN'' IR'' YV( )Z) )Z) YV( )Z)!!)F!!UUUUUUUUUUUUUUUU!!)J!! )F$)Z*._9N& YZ(_9N&)Z*.6-+Z6-+Z_9N& )Z) )^* )^) )^* )^* )^* |
|
225 |
)"* 9"* )"*!!)J!!UUUUUUUUUUUUUUUU!!)J!! 9J%)Z*.)Z*._9J%)Z*.6-+Z6-+Z6-+Z6-+Z!!I"*!!).,!!).,!!).,!!).,!!).,!!).,!!).,!!)*+!!)J!!UUUUUUUU |
|
226 |
UUUUUUUU!!YF !!YN&)Z&-6-+Z)Z&-6-+Z6-+Z6-+Z6-+Z!!Y"(")2+"96,"96,"96,"96,"96,"96,"96,!!I*,!!YF UUUUUUUUUUUUUUUU!!YF "IZ'')Z&-6-+Z |
|
227 |
6-+Z6-+Z6-+Z6-+Z"Y*)#)>,#:B-#:B-#:B-#:B-#:B-#:B-#:B-#:B-!!I2-!!YF UUUUUUUUUUUUUUUU!!YF ")^()J&-6]''Y6]''Y6]''Y6]''Y"I"''$I>+$:J- |
|
228 |
$:J-$:J-$:J-$:J-$:J-$:J-$:J-$*J- 92-!!YF UUUUUUUUUUUUUUUU!!YF "9"()J&-6]''Y6]''Y6]''Y6]''Y6]''Y#)2)$:J,%ZN-%ZN-%ZN-%ZN-%ZN-%ZN- |
|
229 |
%ZN-%ZN-!!Y2-!!YF UUUUUUUUUUUUUUUU!!YF #I**)J&-6]''Y6]''Y6]''Y6]''Y6]''Y6]''Y$*B,%ZN-%ZN-%ZN-%ZN-%ZN-%JN-%JN-%JN-"I2-!!YF UUUUUUUU |
|
230 |
UUUUUUUU!!IB_#Y.+#I&)"9&(#I&(#I&(#I&(#Y*(#).)$I6+$):,$Y:,$Y:,$Y6,#96,#)2+#Y.+"9.+"9*+!!IB_UUUUUUUUUUUUUUUU!!(6V!!IB_!!IB_!!IB_ |
|
231 |
!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!IB_!!X2UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU |
|
232 |
UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU |
|
233 |
UUUUUUUUUUUUUUUUUUUUUUUU') ; mask:((Depth1Image new) width: 24; height: 24; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<@@@@@@@@') ; yourself); yourself] |
|
234 |
! |
|
235 |
||
236 |
settingsIcon3 |
|
237 |
"This resource specification was automatically generated |
|
238 |
by the ImageEditor of ST/X." |
|
239 |
||
240 |
"Do not manually edit this!! If it is corrupted, |
|
241 |
the ImageEditor may not be able to read the specification." |
|
242 |
||
243 |
" |
|
244 |
self settingsIcon3 inspect |
|
245 |
ImageEditor openOnClass:self andSelector:#settingsIcon3 |
|
246 |
Icon flushCachedIcons |
|
247 |
" |
|
248 |
||
249 |
<resource: #image> |
|
250 |
||
251 |
^Icon |
|
252 |
constantNamed:'Tools::Inspector2 class settingsIcon3' |
|
253 |
ifAbsentPut:[(Depth24Image new) width: 24; height: 24; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:' |
|
254 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
255 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@TZC?V*_?V*_?V*_?V*_?V*_?V*_?V*_?V*_?V*S? |
|
256 |
VJ[?UZO?TJK?TI??TI??TI??TJK?UZO?VJ[?TZC?@@@@@@@@@@@@@@@@VJ[?,]_?,]_?,]_?-]7?/NC?/>C?0=??1^C?0^K?-=7?*-G?&L+?"<W?!!<G?!!LO? |
|
257 |
"\W?$<+?(]C?UZO?@@@@@@@@@@@@@@@@VJ[?)]''?+]S?-M_?-=7?/M/?/M/?/NC?/-3?-=7?+MK?7OC?7OC?7OC?7OC?7OC?7OC?7OC?"<S?TI??@@@@@@@@ |
|
258 |
@@@@@@@@VJ[?(]W?*]G?*=S?*=+?*=+?*=S?*=S?*=S?*]G?''L3?!![??7OC?????????????????????[+''?S:G?@@@@@@@@@@@@@@@@UZO?%\/?$<+?$\''? |
|
259 |
#,''?#,''?#,''?#,''?#,''?#\#? <O?Y;S?QZK?6.????7=??7=??7=??7=W;C?SI??@@@@@@@@@@@@@@@@UZO?^<K?^LC?\,G?]<K?]<K?]<K?]<K?]LW?\LO? |
|
260 |
X;W?TZ_?6.????7=??7=??7=??7=??7=UZ#?SI??@@@@@@@@@@@@@@@@TJK?Y[[?XLO?XLO?XLO?XLO?XLO?XLO?XLC?T;S?QZ/?5>7???+:??+:??+:??+: |
|
261 |
??+:??+:RZ[?RI3?@@@@@@@@@@@@@@@@TJK?VJ??S+''?S+''?S+''?S+''?S+''?S+''?S[K?Q*7?5>7???+:??+:??+:??+:DH''???+:??+:OJW?RI3?@@@@@@@@ |
|
262 |
@@@@@@@@TJK?R:_?Q[''?Q[''?Q[''?Q[''?Q[''?Q[''?P[W?OKG?HZG???+:??+:??+:FY+?HY;?HZG???+:M:+?SI??@@@@@@@@@@@@@@@@S:G?P*W?N;S?N;S? |
|
263 |
N;S?N;S?N[G?KZ+?L*/?N[G?J*S?E9???/#8E9??IZO?J:''?J;G?J:''?L[C?SJK?@@@@@@@@@@@@@@@@S:G?L9;?J+K?L+W?MK''?L+W?EJO?5^3?EJO?K;O? |
|
264 |
L+W?J+K?I+C?J+K?L+W?MK[?MK[?L+W?MK[?S9;?@@@@@@@@@@@@@@@@S:G?M9/?5^3?HZ_?L+#?HZ_?5^3??/#8?/#8HZ_?MK''?M+/?NK+?M+/?MK7?M+/? |
|
265 |
M+;?N[;?M+;?S:G?@@@@@@@@@@@@@@@@S:G?O:C?5^3?5^3?HJS?5^3??/#8?/#8?/#8?/#8P+;?S,[?S,[?S,[?S,[?S,[?S,[?S,[?S,W?S:G?@@@@@@@@ |
|
266 |
@@@@@@@@SJK?RZK?4^+???S44^+???S4??S4??S4??S4R[3?XL3?Y,;?Y,;?Y,;?Y,;?Y,;?Y,;?Y,;?O<_?SJK?@@@@@@@@@@@@@@@@SJK?VZ7?4^+???S4 |
|
267 |
??S4??S4??S4??S4XLO?]-K?_=S?_=S?_=S?_=S?_=S?_=S?_=S?_=S?O,??SJK?@@@@@@@@@@@@@@@@RI3?YKG?3>''???K2??K2??K2??K2V;/? =K?$]#? |
|
268 |
$]#?$]#?$]#?$]#?$]#?$]#?$]#?#=_?O]O?RI3?@@@@@@@@@@@@@@@@RI3?ZK[?3>''???K2??K2??K2??K2??K2]L#?%]_?&-7?&-7?&-7?&-7?&-7?&-7? |
|
269 |
&-+?&-+?P<7?RI3?@@@@@@@@@@@@@@@@RI3?[[+?3>''???K2??K2??K2??K2??K2??K2"=K?&-7?&-7?&-7?&-7?&-7?%=+?%=+?%=+?U<''?RI3?@@@@@@@@ |
|
270 |
@@@@@@@@QY3?\[7?[+''?Z;''?[K/?[K/?[+''?\[3?]+7?!!,W?"<#?",W?",W?!!<S?_,S?]<K?\+;?[K;?Z[/?QY3?@@@@@@@@@@@@@@@@M8;?QY3?QY3?QY3? |
|
271 |
QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?K(;?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
272 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
273 |
@@@@@@@@@@@@@@@@@@@@@@@@') ; mask:((Depth1Image new) width: 24; height: 24; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<@@@@@@@@') ; yourself); yourself] |
|
11161 | 274 |
! |
275 |
||
276 |
settingsIcon4 |
|
277 |
"This resource specification was automatically generated |
|
278 |
by the ImageEditor of ST/X." |
|
279 |
||
280 |
"Do not manually edit this!! If it is corrupted, |
|
281 |
the ImageEditor may not be able to read the specification." |
|
282 |
||
283 |
" |
|
284 |
self settingsIcon4 inspect |
|
285 |
ImageEditor openOnClass:self andSelector:#settingsIcon4 |
|
286 |
Icon flushCachedIcons |
|
287 |
" |
|
288 |
||
289 |
<resource: #image> |
|
290 |
||
291 |
^Icon |
|
292 |
constantNamed:'Tools::Inspector2 class settingsIcon4' |
|
293 |
ifAbsentPut:[(Depth24Image new) width: 24; height: 24; photometric:(#rgb); bitsPerSample:(#[8 8 8]); samplesPerPixel:(3); bits:(ByteArray fromPackedString:' |
|
294 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
295 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@TZC?V*_?V*_?V*_?V*_?V*_?V*_?V*_?V*_?V*S? |
|
296 |
VJ[?UZO?TJK?TI??TI??TI??TJK?UZO?VJ[?TZC?@@@@@@@@@@@@@@@@VJ[???>1??>1??>1??>5??><??>????C???E???A??>7??>*??>X??>J??>F??>C |
|
297 |
??>H??>S??> UZO?@@@@@@@@@@@@@@@@VJ[???>%??>-??>4??>7??><??><??><??>>??>7??>*??>*??>J??>J??>J??>J??>J??>J??>JTI??@@@@@@@@ |
|
298 |
@@@@@@@@VJ[???> ??>)??>+??>+??>+??>+??>+??>+??>)??>\??>D??>D??>D??>D??>D??=-??=-??=-S:G?@@@@@@@@@@@@@@@@UZO???>U??>S??>Q |
|
299 |
?/:N?/:N?/:N?/:N?/:N?/:N?/:N??=&??=&??=&??=&??=_??=_??=_??=_SI??@@@@@@@@@@@@@@@@UZO???=;??=8??=1??=6??=6?/:N?/:N?/:N?/:N |
|
300 |
??=#?/=P?/=P?/=P?/=P??=U??=U??=U??=USI??@@@@@@@@@@@@@@@@TJK?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[? |
|
301 |
Y[[?Y[[?Y[[?RI3?@@@@@@@@@@@@@@@@TJK?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?RI3?@@@@@@@@ |
|
302 |
@@@@@@@@TJK?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?SI??@@@@@@@@@@@@@@@@S:G?Y[[?Y[[?Y[[? |
|
303 |
Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?SJK?@@@@@@@@@@@@@@@@S:G?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[? |
|
304 |
Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?S9;?@@@@@@@@@@@@@@@@S:G?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[? |
|
305 |
Y[[?Y[[?Y[[?S:G?@@@@@@@@@@@@@@@@S:G?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?S:G?@@@@@@@@ |
|
306 |
@@@@@@@@SJK?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?SJK?@@@@@@@@@@@@@@@@SJK?Y[[?Y[[?Y[[? |
|
307 |
Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?SJK?@@@@@@@@@@@@@@@@RI3?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[? |
|
308 |
Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?RI3?@@@@@@@@@@@@@@@@RI3?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[? |
|
309 |
Y[[?Y[[?Y[[?RI3?@@@@@@@@@@@@@@@@RI3?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?RI3?@@@@@@@@ |
|
310 |
@@@@@@@@QY3?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?Y[[?QY3?@@@@@@@@@@@@@@@@M8;?QY3?QY3?QY3? |
|
311 |
QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?QY3?K(;?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
312 |
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |
|
313 |
@@@@@@@@@@@@@@@@@@@@@@@@') ; mask:((Depth1Image new) width: 24; height: 24; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<O??<@@@@@@@@') ; yourself); yourself] |
|
314 |
! |
|
315 |
||
316 |
settingsIcon5 |
|
317 |
^ GenericToolbarIconLibrary palette16x16Icon |
|
318 |
||
319 |
"Created: / 19-01-2012 / 14:00:24 / cg" |
|
11142 | 320 |
! ! |
321 |
||
8779 | 322 |
!Inspector2 class methodsFor:'interface specs'! |
323 |
||
324 |
windowSpec |
|
325 |
"This resource specification was automatically generated |
|
326 |
by the UIPainter of ST/X." |
|
327 |
||
328 |
"Do not manually edit this!! If it is corrupted, |
|
329 |
the UIPainter may not be able to read the specification." |
|
330 |
||
331 |
" |
|
10425
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
332 |
UIPainter new openOnClass:Tools::Inspector2 andSelector:#windowSpec |
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
333 |
Tools::Inspector2 new openInterface:#windowSpec |
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
334 |
Tools::Inspector2 open |
8779 | 335 |
" |
336 |
||
337 |
<resource: #canvas> |
|
338 |
||
339 |
^ |
|
340 |
#(FullSpec |
|
341 |
name: windowSpec |
|
342 |
window: |
|
343 |
(WindowSpec |
|
344 |
label: 'Inspector2' |
|
345 |
name: 'Inspector2' |
|
346 |
labelChannel: windowTitleAspect |
|
347 |
min: (Point 0 0) |
|
348 |
bounds: (Rectangle 0 0 388 421) |
|
11229 | 349 |
menu: mainMenu |
8779 | 350 |
) |
351 |
component: |
|
352 |
(SpecCollection |
|
353 |
collection: ( |
|
354 |
(MenuPanelSpec |
|
355 |
name: 'ToolBar' |
|
10425
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
356 |
layout: (LayoutFrame 0 0 0 0 0 1 40 0) |
11142 | 357 |
backgroundChannel: toolbarBackgroundHolder |
8779 | 358 |
menu: toolbarMenu |
359 |
textDefault: true |
|
360 |
) |
|
361 |
(NoteBookViewSpec |
|
362 |
name: 'NoteBook' |
|
10425
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
363 |
layout: (LayoutFrame 0 0 40 0 0 1 0 1) |
8779 | 364 |
model: tabSelectionIndexAspect |
365 |
menu: tabLabelsAspect |
|
366 |
useIndex: true |
|
367 |
fitLastRow: false |
|
368 |
canvas: tabViewAspect |
|
369 |
keepCanvasAlive: true |
|
370 |
) |
|
371 |
) |
|
372 |
||
373 |
) |
|
374 |
) |
|
375 |
! ! |
|
376 |
||
377 |
!Inspector2 class methodsFor:'menu specs'! |
|
378 |
||
11229 | 379 |
mainMenu |
380 |
"This resource specification was automatically generated |
|
381 |
by the MenuEditor of ST/X." |
|
382 |
||
383 |
"Do not manually edit this!! If it is corrupted, |
|
384 |
the MenuEditor may not be able to read the specification." |
|
385 |
||
386 |
||
387 |
" |
|
388 |
MenuEditor new openOnClass:Tools::Inspector2 andSelector:#mainMenu |
|
389 |
(Menu new fromLiteralArrayEncoding:(Tools::Inspector2 mainMenu)) startUp |
|
390 |
" |
|
391 |
||
392 |
<resource: #menu> |
|
393 |
||
394 |
^ |
|
395 |
#(Menu |
|
396 |
( |
|
397 |
(MenuItem |
|
398 |
label: 'File' |
|
399 |
submenu: |
|
400 |
(Menu |
|
401 |
( |
|
402 |
(MenuItem |
|
403 |
label: 'Exit' |
|
404 |
itemValue: closeRequest |
|
405 |
) |
|
406 |
) |
|
407 |
nil |
|
408 |
nil |
|
409 |
) |
|
410 |
) |
|
411 |
(MenuItem |
|
412 |
label: 'View' |
|
413 |
submenu: |
|
414 |
(Menu |
|
415 |
( |
|
416 |
(MenuItem |
|
12357 | 417 |
label: 'Expand Arrays in "all xxx"-Lists' |
11229 | 418 |
itemValue: expandArraysInAllList: |
419 |
indication: expandArraysInAllList |
|
420 |
) |
|
421 |
(MenuItem |
|
422 |
label: '-' |
|
423 |
) |
|
424 |
(MenuItem |
|
425 |
label: 'Color Setting' |
|
426 |
submenuChannel: settingsMenu |
|
427 |
) |
|
428 |
) |
|
429 |
nil |
|
430 |
nil |
|
431 |
) |
|
432 |
) |
|
12836 | 433 |
(MenuItem |
434 |
label: 'Help' |
|
435 |
startGroup: conditionalRight |
|
436 |
submenu: |
|
437 |
(Menu |
|
438 |
( |
|
439 |
(MenuItem |
|
440 |
label: 'Documentation' |
|
441 |
itemValue: openDocumentation |
|
442 |
) |
|
443 |
(MenuItem |
|
444 |
label: '-' |
|
445 |
) |
|
446 |
(MenuItem |
|
447 |
label: 'About this Application...' |
|
448 |
itemValue: openAboutThisApplication |
|
449 |
) |
|
450 |
) |
|
451 |
nil |
|
452 |
nil |
|
453 |
) |
|
454 |
) |
|
11229 | 455 |
) |
456 |
nil |
|
457 |
nil |
|
458 |
) |
|
459 |
! |
|
460 |
||
11142 | 461 |
settingsMenu |
462 |
"This resource specification was automatically generated |
|
463 |
by the MenuEditor of ST/X." |
|
464 |
||
465 |
"Do not manually edit this!! If it is corrupted, |
|
466 |
the MenuEditor may not be able to read the specification." |
|
467 |
||
468 |
||
469 |
" |
|
470 |
MenuEditor new openOnClass:Tools::Inspector2 andSelector:#settingsMenu |
|
471 |
(Menu new fromLiteralArrayEncoding:(Tools::Inspector2 settingsMenu)) startUp |
|
472 |
" |
|
473 |
||
474 |
<resource: #menu> |
|
475 |
||
476 |
^ |
|
477 |
#(Menu |
|
478 |
( |
|
479 |
(MenuItem |
|
480 |
label: 'Default' |
|
12836 | 481 |
nameKey: Default |
482 |
hideMenuOnActivated: false |
|
11142 | 483 |
choice: colorProfileHolder |
484 |
choiceValue: default |
|
485 |
) |
|
486 |
(MenuItem |
|
12836 | 487 |
label: '-' |
488 |
) |
|
489 |
(MenuItem |
|
11142 | 490 |
label: 'Red' |
12836 | 491 |
nameKey: Red |
492 |
hideMenuOnActivated: false |
|
11142 | 493 |
choice: colorProfileHolder |
494 |
choiceValue: red |
|
495 |
) |
|
496 |
(MenuItem |
|
497 |
label: 'Green' |
|
12836 | 498 |
nameKey: Green |
499 |
hideMenuOnActivated: false |
|
500 |
choice: colorProfileHolder |
|
11142 | 501 |
choiceValue: green |
502 |
) |
|
503 |
(MenuItem |
|
504 |
label: 'Blue' |
|
12836 | 505 |
nameKey: Blue |
506 |
hideMenuOnActivated: false |
|
507 |
choice: colorProfileHolder |
|
11142 | 508 |
choiceValue: blue |
509 |
) |
|
510 |
(MenuItem |
|
511 |
label: 'Yellow' |
|
12836 | 512 |
nameKey: Yellow |
513 |
hideMenuOnActivated: false |
|
514 |
choice: colorProfileHolder |
|
11142 | 515 |
choiceValue: yellow |
516 |
) |
|
517 |
(MenuItem |
|
518 |
label: 'Gray' |
|
12836 | 519 |
nameKey: Gray |
520 |
hideMenuOnActivated: false |
|
521 |
choice: colorProfileHolder |
|
11142 | 522 |
choiceValue: gray |
523 |
) |
|
524 |
) |
|
525 |
nil |
|
526 |
nil |
|
527 |
) |
|
528 |
! |
|
529 |
||
8779 | 530 |
toolbarMenu |
531 |
"This resource specification was automatically generated |
|
532 |
by the MenuEditor of ST/X." |
|
533 |
||
534 |
"Do not manually edit this!! If it is corrupted, |
|
535 |
the MenuEditor may not be able to read the specification." |
|
536 |
||
11142 | 537 |
|
8779 | 538 |
" |
10379 | 539 |
MenuEditor new openOnClass:Tools::Inspector2 andSelector:#toolbarMenu |
540 |
(Menu new fromLiteralArrayEncoding:(Tools::Inspector2 toolbarMenu)) startUp |
|
8779 | 541 |
" |
542 |
||
543 |
<resource: #menu> |
|
544 |
||
545 |
^ |
|
546 |
#(Menu |
|
547 |
( |
|
548 |
(MenuItem |
|
10597 | 549 |
activeHelpKey: backwardInVisitingHistory |
8779 | 550 |
enabled: backButtonEnabledHolder |
551 |
label: 'Back' |
|
552 |
itemValue: backButtonAction |
|
553 |
translateLabel: true |
|
10460 | 554 |
isButton: true |
10596 | 555 |
hideMenuOnActivated: false |
8779 | 556 |
submenuChannel: backButtonMenuChannel |
10596 | 557 |
labelImage: (ResourceRetriever ToolbarIconLibrary historyBackIcon) |
8779 | 558 |
) |
559 |
(MenuItem |
|
10597 | 560 |
activeHelpKey: forwardInVisitingHistory |
8779 | 561 |
enabled: forwardButtonEnabledHolder |
562 |
label: 'Forward' |
|
563 |
itemValue: forwardButtonAction |
|
564 |
translateLabel: true |
|
10460 | 565 |
isButton: true |
10596 | 566 |
hideMenuOnActivated: false |
8779 | 567 |
submenuChannel: forwardButtonMenuChannel |
10596 | 568 |
labelImage: (ResourceRetriever ToolbarIconLibrary historyForwardIcon) |
8779 | 569 |
) |
10379 | 570 |
(MenuItem |
571 |
label: '-' |
|
572 |
) |
|
573 |
(MenuItem |
|
10597 | 574 |
activeHelpKey: browseClassOfShownObject |
575 |
enabled: browseButtonEnabledHolder |
|
10379 | 576 |
label: 'Browse' |
577 |
itemValue: browseClassAction |
|
578 |
translateLabel: true |
|
579 |
isButton: true |
|
10596 | 580 |
hideMenuOnActivated: false |
581 |
labelImage: (ResourceRetriever ToolbarIconLibrary startNewSystemBrowserIcon) |
|
10379 | 582 |
) |
10597 | 583 |
(MenuItem |
584 |
activeHelpKey: browseFile |
|
585 |
label: 'Browse File' |
|
586 |
itemValue: browseFileAction |
|
587 |
translateLabel: true |
|
588 |
isButton: true |
|
589 |
isVisible: currentObjectIsFilename |
|
590 |
hideMenuOnActivated: false |
|
591 |
labelImage: (ResourceRetriever ToolbarIconLibrary startNewFileBrowserIcon) |
|
592 |
) |
|
10636 | 593 |
(MenuItem |
11134 | 594 |
activeHelpKey: editImage |
595 |
label: 'Edit the Image' |
|
596 |
itemValue: editImageAction |
|
597 |
translateLabel: true |
|
598 |
isButton: true |
|
599 |
isVisible: currentObjectIsImage |
|
600 |
hideMenuOnActivated: false |
|
601 |
labelImage: (ResourceRetriever ToolbarIconLibrary startImageEditorIcon) |
|
602 |
) |
|
603 |
(MenuItem |
|
11160 | 604 |
activeHelpKey: refresh |
10636 | 605 |
label: 'Refresh for Changed Object' |
606 |
itemValue: refreshTabs |
|
607 |
translateLabel: true |
|
608 |
isButton: true |
|
609 |
startGroup: right |
|
610 |
labelImage: (ResourceRetriever ToolbarIconLibrary reloadIcon) |
|
611 |
) |
|
11142 | 612 |
(MenuItem |
11160 | 613 |
activeHelpKey: colorProfile |
11142 | 614 |
label: 'Settings' |
615 |
translateLabel: true |
|
616 |
isButton: true |
|
11265 | 617 |
isVisible: false |
11142 | 618 |
submenuChannel: settingsMenu |
619 |
labelImage: (ResourceRetriever #'Tools::Inspector2' settingsIcon) |
|
620 |
) |
|
8779 | 621 |
) |
622 |
nil |
|
623 |
nil |
|
624 |
) |
|
625 |
! ! |
|
626 |
||
627 |
!Inspector2 class methodsFor:'startup'! |
|
628 |
||
629 |
openOn: anObject |
|
630 |
||
12515 | 631 |
^ self new openOn: anObject. |
8779 | 632 |
|
633 |
"Modified: / 17-02-2008 / 10:29:45 / janfrog" |
|
10311 | 634 |
"Modified (format): / 11-07-2011 / 22:28:03 / cg" |
13132 | 635 |
! |
636 |
||
637 |
openOn: anObject title:aString |
|
638 |
||
639 |
^ self new |
|
640 |
openOn: anObject; |
|
641 |
windowTitle:aString |
|
642 |
||
643 |
" |
|
644 |
self openOn:(Array new:3) |
|
645 |
self openOn:(Array new:3) title:'my array' |
|
646 |
" |
|
8779 | 647 |
! ! |
648 |
||
649 |
!Inspector2 class methodsFor:'testing'! |
|
650 |
||
651 |
testSimpleShow |
|
652 |
|ins| |
|
653 |
||
654 |
ins := Inspector2 openOn:4. |
|
655 |
ins inspect:10. |
|
656 |
ins inspect:42. |
|
657 |
ins inspect:'dead one'. |
|
658 |
ins inspect:'rolled back'. |
|
659 |
||
660 |
"/ins inspectItem: (ins history at: 3). "/ Rollback history, zustanou jen prvni 3 |
|
661 |
||
662 |
ins inspect:'xFuj'. |
|
663 |
||
664 |
"Modified: / 11-01-2008 / 20:36:37 / janfrog" |
|
665 |
! ! |
|
666 |
||
667 |
!Inspector2 methodsFor:'accessing'! |
|
668 |
||
10597 | 669 |
backButtonEnabled:value |
670 |
^ self backButtonEnabledHolder value:value |
|
8779 | 671 |
|
672 |
"Created: / 12-01-2008 / 19:14:35 / janfrog" |
|
10597 | 673 |
"Modified (format): / 19-08-2011 / 08:59:41 / cg" |
8779 | 674 |
! |
675 |
||
676 |
currentObject |
|
677 |
^ self navigationState theObject |
|
678 |
||
679 |
"Created: / 13-01-2008 / 10:14:47 / janfrog" |
|
680 |
"Modified: / 17-02-2008 / 09:49:01 / janfrog" |
|
681 |
! |
|
682 |
||
683 |
currentState |
|
684 |
^ self navigationHistoryHolder currentItem |
|
685 |
||
686 |
"Created: / 21-02-2008 / 19:39:45 / janfrog" |
|
687 |
"Modified: / 27-02-2008 / 11:56:55 / janfrog" |
|
688 |
! |
|
689 |
||
10597 | 690 |
forwardButtonEnabled:value |
691 |
^ self forwardButtonEnabledHolder value:value |
|
8779 | 692 |
|
693 |
"Created: / 12-01-2008 / 19:14:48 / janfrog" |
|
10597 | 694 |
"Modified (format): / 19-08-2011 / 08:59:45 / cg" |
8779 | 695 |
! |
696 |
||
697 |
navigationState |
|
10379 | 698 |
^ self navigationHistoryHolder value currentItem |
8779 | 699 |
|
700 |
"Created: / 17-02-2008 / 09:49:01 / janfrog" |
|
701 |
"Modified: / 21-02-2008 / 19:34:14 / janfrog" |
|
10379 | 702 |
"Modified: / 22-07-2011 / 19:13:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
8779 | 703 |
! |
704 |
||
705 |
navigationState:historyItem |
|
10379 | 706 |
self navigationHistoryHolder "subjectChannel:" value currentItem:historyItem. |
8779 | 707 |
|
708 |
"/self fixNavigation. "Nevola se kvuli problemu s prekreslovanim" |
|
709 |
"/self updateTabs. |
|
710 |
||
711 |
"Created: / 17-02-2008 / 09:49:11 / janfrog" |
|
712 |
"Modified: / 21-02-2008 / 19:47:26 / janfrog" |
|
10379 | 713 |
"Modified: / 22-07-2011 / 19:13:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
10597 | 714 |
"Modified: / 19-08-2011 / 09:16:38 / cg" |
8779 | 715 |
! ! |
716 |
||
717 |
!Inspector2 methodsFor:'aspects'! |
|
718 |
||
719 |
backButtonEnabledHolder |
|
720 |
"return/create the 'backButtonEnabledHolder' value holder (automatically generated)" |
|
721 |
||
722 |
^(AspectAdaptor forAspect:#canGoBack) |
|
723 |
subjectChannel: self navigationHistoryHolder |
|
724 |
||
725 |
"Created: / 12-01-2008 / 19:13:49 / janfrog" |
|
726 |
"Modified: / 27-02-2008 / 12:11:30 / janfrog" |
|
727 |
! |
|
728 |
||
10597 | 729 |
browseButtonEnabledHolder |
730 |
^ BlockValue |
|
731 |
with:[:m | m notNil] |
|
732 |
argument:self navigationStateAspect |
|
733 |
||
734 |
"Created: / 19-08-2011 / 09:22:47 / cg" |
|
735 |
! |
|
736 |
||
11142 | 737 |
colorProfileHolder |
738 |
"return/create the 'colorProfileHolder' value holder (automatically generated)" |
|
739 |
||
740 |
colorProfileHolder isNil ifTrue:[ |
|
741 |
colorProfileHolder := ValueHolder with: #default. |
|
742 |
]. |
|
743 |
^ colorProfileHolder |
|
744 |
||
745 |
"Modified: / 17-01-2012 / 12:54:31 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
746 |
! |
|
747 |
||
10597 | 748 |
currentObjectHolder |
749 |
currentObjectHolder isNil ifTrue:[ |
|
750 |
currentObjectHolder := ValueHolder new |
|
751 |
]. |
|
752 |
^ currentObjectHolder |
|
753 |
||
754 |
"Created: / 27-02-2008 / 12:05:22 / janfrog" |
|
755 |
"Created: / 19-08-2011 / 08:58:48 / cg" |
|
756 |
! |
|
757 |
||
758 |
currentObjectIsFilename |
|
759 |
^ BlockValue |
|
760 |
with:[:o | o isFilename ] |
|
761 |
argument:self currentObjectHolder |
|
762 |
||
763 |
"Created: / 19-08-2011 / 08:56:27 / cg" |
|
764 |
! |
|
765 |
||
11134 | 766 |
currentObjectIsImage |
767 |
^ BlockValue |
|
768 |
with:[:o | o isImageOrForm ] |
|
769 |
argument:self currentObjectHolder |
|
770 |
||
771 |
"Created: / 15-01-2012 / 10:06:28 / cg" |
|
772 |
! |
|
773 |
||
11229 | 774 |
expandArraysInAllList |
775 |
^ InspectorView expandArraysInAllLists |
|
776 |
||
777 |
"Created: / 30-01-2012 / 16:52:46 / cg" |
|
778 |
! |
|
779 |
||
780 |
expandArraysInAllList:aBoolean |
|
781 |
InspectorView expandArraysInAllLists:aBoolean |
|
782 |
||
783 |
"Created: / 30-01-2012 / 16:53:15 / cg" |
|
784 |
! |
|
785 |
||
8779 | 786 |
forwardButtonEnabledHolder |
787 |
"return/create the 'backButtonEnabledHolder' value holder (automatically generated)" |
|
788 |
||
789 |
^(AspectAdaptor forAspect:#canGoForward) |
|
790 |
subjectChannel: self navigationHistoryHolder |
|
791 |
||
792 |
"Created: / 12-01-2008 / 19:13:49 / janfrog" |
|
793 |
"Modified: / 27-02-2008 / 12:11:26 / janfrog" |
|
794 |
! |
|
795 |
||
796 |
navigationHistoryHolder |
|
797 |
"return/create the 'currentItemHolder' value holder (automatically generated)" |
|
798 |
||
799 |
navigationHistoryHolder isNil ifTrue:[ |
|
800 |
navigationHistoryHolder := Tools::NavigationHistory new. |
|
801 |
]. |
|
802 |
^ navigationHistoryHolder |
|
803 |
||
804 |
"Created: / 21-02-2008 / 19:34:14 / janfrog" |
|
805 |
! |
|
806 |
||
807 |
navigationStateAspect |
|
10597 | 808 |
navigationStateAspect isNil ifTrue:[ |
809 |
navigationStateAspect := (AspectAdaptor forAspect:#currentItem) |
|
810 |
subjectChannel:self navigationHistoryHolder |
|
811 |
]. |
|
812 |
^ navigationStateAspect |
|
8779 | 813 |
|
814 |
"Created: / 27-02-2008 / 12:05:22 / janfrog" |
|
10597 | 815 |
"Modified (format): / 19-08-2011 / 08:59:10 / cg" |
8779 | 816 |
! |
817 |
||
818 |
tabLabelsAspect |
|
819 |
^ (AspectAdaptor forAspect:#tabLabels) |
|
10597 | 820 |
subjectChannel:self navigationStateAspect |
8779 | 821 |
|
822 |
"Created: / 16-01-2008 / 17:29:52 / janfrog" |
|
823 |
"Modified: / 27-02-2008 / 12:05:32 / janfrog" |
|
10597 | 824 |
"Modified (format): / 19-08-2011 / 08:59:21 / cg" |
8779 | 825 |
! |
826 |
||
827 |
tabSelectionIndexAspect |
|
828 |
^ ((AspectAdaptor forAspect:#selectionIndex) |
|
829 |
subjectChannel:self navigationStateAspect) |
|
830 |
onChangeEvaluate:[ self tabViewAspect changed ]; |
|
831 |
yourself |
|
832 |
||
833 |
"Created: / 16-01-2008 / 17:29:29 / janfrog" |
|
834 |
"Modified: / 27-02-2008 / 12:06:05 / janfrog" |
|
835 |
! |
|
836 |
||
837 |
tabViewAspect |
|
10597 | 838 |
tabViewAspect isNil ifTrue:[ |
839 |
tabViewAspect := (AspectAdaptor forAspect:#selectionView) |
|
840 |
subjectChannel:self navigationStateAspect |
|
841 |
]. |
|
8779 | 842 |
^ tabViewAspect |
843 |
||
844 |
"Created: / 16-01-2008 / 17:30:05 / janfrog" |
|
845 |
"Modified: / 27-02-2008 / 12:05:46 / janfrog" |
|
10597 | 846 |
"Modified (format): / 19-08-2011 / 08:59:35 / cg" |
8779 | 847 |
! |
848 |
||
11142 | 849 |
toolbarBackgroundHolder |
850 |
"return/create the 'toolbarBackgroundHolder' value holder (automatically generated)" |
|
851 |
||
852 |
toolbarBackgroundHolder isNil ifTrue:[ |
|
853 |
toolbarBackgroundHolder := BlockValue |
|
854 |
with: [:profile| |
|
855 |
| clr | |
|
856 |
||
857 |
clr := ColorProfiles at: profile value. |
|
858 |
clr isNil ifTrue:[ |
|
859 |
clr := MenuPanel defaultBackgroundColor |
|
860 |
]. |
|
861 |
clr. |
|
862 |
] argument: self colorProfileHolder |
|
863 |
]. |
|
864 |
^ toolbarBackgroundHolder |
|
865 |
||
866 |
"Modified: / 17-01-2012 / 13:04:25 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
867 |
! |
|
868 |
||
8779 | 869 |
windowTitleAspect |
870 |
^ (AspectAdaptor forAspect:#displayString) |
|
871 |
subjectChannel:self navigationStateAspect |
|
872 |
||
873 |
"Created: / 17-02-2008 / 08:42:21 / janfrog" |
|
874 |
"Modified: / 27-02-2008 / 12:05:56 / janfrog" |
|
875 |
! ! |
|
876 |
||
12734 | 877 |
!Inspector2 methodsFor:'configuration'! |
878 |
||
879 |
hideHashes:aBoolean |
|
880 |
"compatibiliy with InspectorView - must be implemented" |
|
881 |
||
882 |
#todo |
|
883 |
! |
|
884 |
||
885 |
hideMessages:aBoolean |
|
886 |
"compatibiliy with InspectorView - must be implemented" |
|
887 |
||
888 |
#todo |
|
12736 | 889 |
! |
890 |
||
12891 | 891 |
maxItemsInHistory:aNumber |
892 |
self navigationHistoryHolder value maxItemsInHistory:aNumber |
|
893 |
! |
|
894 |
||
12736 | 895 |
suppressPseudoSlots:aBoolean |
896 |
"compatibiliy with InspectorView - must be implemented" |
|
897 |
||
898 |
#todo |
|
12734 | 899 |
! ! |
900 |
||
10379 | 901 |
!Inspector2 methodsFor:'menu'! |
902 |
||
903 |
backButtonMenuChannel |
|
904 |
^ [ self navigationHistoryHolder goBackMenu ] |
|
905 |
||
906 |
"Created: / 12-01-2008 / 18:57:08 / janfrog" |
|
907 |
"Modified: / 22-02-2008 / 16:57:46 / janfrog" |
|
908 |
! |
|
909 |
||
910 |
forwardButtonMenuChannel |
|
911 |
^ [ self navigationHistoryHolder goForwardMenu ] |
|
912 |
||
913 |
"Created: / 12-01-2008 / 18:57:30 / janfrog" |
|
914 |
"Modified: / 22-02-2008 / 16:58:11 / janfrog" |
|
12836 | 915 |
! |
916 |
||
917 |
settingsMenu |
|
918 |
|m| |
|
919 |
||
920 |
m := self class settingsMenu decodeAsLiteralArray. |
|
921 |
m itemsDo:[:eachItem | |
|
922 |
|lbl labelWithColor clr| |
|
923 |
||
924 |
lbl := resources string:eachItem label. |
|
925 |
(eachItem choiceValue ? #default) ~~ #default ifTrue:[ |
|
926 |
clr := Color perform:eachItem choiceValue. |
|
927 |
labelWithColor := lbl asText backgroundColorizeAllWith:clr. |
|
928 |
clr brightness < 0.5 ifTrue:[ |
|
929 |
labelWithColor := labelWithColor colorizeAllWith:Color white. |
|
930 |
]. |
|
931 |
eachItem label:labelWithColor. |
|
932 |
]. |
|
933 |
]. |
|
934 |
^ m |
|
10379 | 935 |
! ! |
936 |
||
937 |
!Inspector2 methodsFor:'menu actions'! |
|
8779 | 938 |
|
939 |
backButtonAction |
|
10320 | 940 |
self navigationHistoryHolder goBack. |
941 |
self updateWindowLabel |
|
8779 | 942 |
|
943 |
"Modified: / 21-02-2008 / 19:40:23 / janfrog" |
|
10320 | 944 |
"Modified: / 15-07-2011 / 16:26:28 / cg" |
8779 | 945 |
! |
946 |
||
10379 | 947 |
browseClassAction |
10636 | 948 |
"open a class browser, or try to add a tab to the previously opened class browser" |
10597 | 949 |
|
10460 | 950 |
| class | |
10379 | 951 |
|
952 |
class := self currentObject class. |
|
8779 | 953 |
|
13225 | 954 |
"/ browser notNil ifTrue:[ |
955 |
"/ "/ try to add a tab to the already opened browser |
|
956 |
"/ (browser isKindOf:Tools::NewSystemBrowser) ifTrue:[ |
|
957 |
"/ browser spawnClassBrowserFor:(Array with:class) in:#newBuffer. |
|
958 |
"/ "/ browser spawnSingleClassBrowserFor:class in:#newBuffer. |
|
959 |
"/ browser window raise. |
|
960 |
"/ ^ self. |
|
961 |
"/ ]. |
|
962 |
"/ ]. |
|
10597 | 963 |
"/ if that fails, open a new one |
964 |
||
13015 | 965 |
browser := UserPreferences systemBrowserClass |
11361 | 966 |
openInClass:class selector:nil "/ browseSingleClass: class |
10379 | 967 |
|
968 |
"Modified: / 23-07-2011 / 11:28:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
13225 | 969 |
"Modified: / 26-07-2013 / 15:36:51 / cg" |
10597 | 970 |
! |
971 |
||
972 |
browseFileAction |
|
973 |
"open a filebrowser on the file represented by the current object" |
|
974 |
||
975 |
| fn | |
|
976 |
||
977 |
fn := self currentObject asFilename. |
|
978 |
UserPreferences current fileBrowserClass openOn:fn |
|
979 |
||
980 |
"Created: / 19-08-2011 / 09:29:44 / cg" |
|
8779 | 981 |
! |
982 |
||
11142 | 983 |
changeColorAction: color |
984 |
||
985 |
self toolbarBackgroundHolder value: (Color perform: color asSymbol) |
|
986 |
||
987 |
"Created: / 17-01-2012 / 01:03:55 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
988 |
! |
|
989 |
||
11134 | 990 |
editImageAction |
991 |
"open an imageEditor on the current object" |
|
992 |
||
993 |
| img | |
|
994 |
||
995 |
img := self currentObject. |
|
996 |
ImageEditor openOnImage:img. |
|
997 |
||
998 |
"Created: / 15-01-2012 / 10:08:29 / cg" |
|
999 |
! |
|
1000 |
||
8779 | 1001 |
forwardButtonAction |
10320 | 1002 |
self navigationHistoryHolder goForward. |
1003 |
self updateWindowLabel |
|
8779 | 1004 |
|
1005 |
"Created: / 21-02-2008 / 19:52:03 / janfrog" |
|
10320 | 1006 |
"Modified: / 15-07-2011 / 16:26:33 / cg" |
10636 | 1007 |
! |
1008 |
||
12836 | 1009 |
openDocumentation |
1010 |
HTMLDocumentView openFullOnDocumentationFile:'tools/misc/TOP.html#INSPECTOR'. |
|
1011 |
! |
|
1012 |
||
10636 | 1013 |
refreshTabs |
1014 |
self navigationHistoryHolder currentItem refreshTabs. |
|
1015 |
self tabViewAspect changed. |
|
1016 |
||
1017 |
"/ sel := selectionIndex. |
|
1018 |
"/ self selectionIndex:nil. |
|
1019 |
"/ self selectionIndex:sel. |
|
1020 |
||
1021 |
"Created: / 21-08-2011 / 08:23:00 / cg" |
|
8779 | 1022 |
! ! |
1023 |
||
1024 |
!Inspector2 methodsFor:'opening'! |
|
1025 |
||
10311 | 1026 |
closeDownViews |
1027 |
LastExtent := self window extent. |
|
1028 |
super closeDownViews. |
|
1029 |
||
1030 |
"Created: / 11-07-2011 / 22:33:47 / cg" |
|
1031 |
! |
|
1032 |
||
8779 | 1033 |
historyTryPush: anObject |
10597 | 1034 |
<resource: #obsolete> |
8779 | 1035 |
|
1036 |
"/ Pokud uz na anObject byl tak tam skocit, jinak pridat na konec |
|
1037 |
self history do: [:item | |
|
1038 |
item theObject == anObject ifTrue:[ ^item ] |
|
1039 |
]. |
|
1040 |
||
1041 |
^ self history push:anObject. |
|
1042 |
||
1043 |
"Modified: / 16-01-2008 / 14:25:30 / janfrog" |
|
1044 |
! |
|
1045 |
||
1046 |
inspect:anObject |
|
10597 | 1047 |
self navigationHistoryHolder currentItem:(NavigationState for:anObject). |
1048 |
self window notNil ifTrue:[ |
|
10320 | 1049 |
self updateWindowLabel |
1050 |
]. |
|
8779 | 1051 |
|
1052 |
"Modified: / 27-02-2008 / 12:06:52 / janfrog" |
|
10320 | 1053 |
"Modified: / 15-07-2011 / 16:26:03 / cg" |
10597 | 1054 |
"Modified (format): / 19-08-2011 / 09:01:20 / cg" |
8779 | 1055 |
! |
1056 |
||
1057 |
openOn: anObject |
|
10311 | 1058 |
self inspect: anObject. |
1059 |
self openWithExtent:(LastExtent ? nil). |
|
8779 | 1060 |
|
1061 |
"Modified: / 13-01-2008 / 13:55:27 / janfrog" |
|
10311 | 1062 |
"Modified: / 11-07-2011 / 22:31:42 / cg" |
10320 | 1063 |
! |
1064 |
||
1065 |
postBuildWith:aBuilder |
|
11373 | 1066 |
super postBuildWith:aBuilder. |
1067 |
||
10320 | 1068 |
self updateWindowLabel |
1069 |
||
1070 |
"Created: / 15-07-2011 / 16:25:36 / cg" |
|
1071 |
! |
|
1072 |
||
1073 |
updateWindowLabel |
|
10423
8215f496b6de
changed: #updateWindowLabel
Claus Gittinger <cg@exept.de>
parents:
10392
diff
changeset
|
1074 |
|currentItem object| |
10320 | 1075 |
|
10423
8215f496b6de
changed: #updateWindowLabel
Claus Gittinger <cg@exept.de>
parents:
10392
diff
changeset
|
1076 |
(currentItem := self navigationHistoryHolder currentItem) notNil ifTrue:[ |
8215f496b6de
changed: #updateWindowLabel
Claus Gittinger <cg@exept.de>
parents:
10392
diff
changeset
|
1077 |
object := currentItem theObject. |
8215f496b6de
changed: #updateWindowLabel
Claus Gittinger <cg@exept.de>
parents:
10392
diff
changeset
|
1078 |
]. |
10597 | 1079 |
self currentObjectHolder value:object. |
10320 | 1080 |
self window label:(InspectorView commonLabelFor:object). |
1081 |
||
1082 |
"Created: / 15-07-2011 / 16:25:42 / cg" |
|
8779 | 1083 |
! ! |
1084 |
||
13168 | 1085 |
|
8779 | 1086 |
!Inspector2::NavigationState class methodsFor:'creating classes'! |
1087 |
||
10597 | 1088 |
for:anObject |
1089 |
|item| |
|
1090 |
||
1091 |
item := self new. |
|
1092 |
item theObject:anObject. |
|
1093 |
^ item. |
|
1094 |
||
1095 |
"Modified (format): / 19-08-2011 / 09:24:40 / cg" |
|
8779 | 1096 |
! ! |
1097 |
||
1098 |
!Inspector2::NavigationState class methodsFor:'documentation'! |
|
1099 |
||
9996 | 1100 |
version |
13225 | 1101 |
^'$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $' |
9996 | 1102 |
! |
1103 |
||
8779 | 1104 |
version_SVN |
13225 | 1105 |
^'$Id: Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $' |
8779 | 1106 |
! ! |
1107 |
||
1108 |
!Inspector2::NavigationState methodsFor:'accessing'! |
|
1109 |
||
1110 |
index |
|
1111 |
^ index |
|
1112 |
! |
|
1113 |
||
1114 |
index:something |
|
1115 |
index := something. |
|
1116 |
! |
|
1117 |
||
1118 |
selectionIndex |
|
10875 | 1119 |
selectionIndex isNil ifTrue:[^1]. |
8779 | 1120 |
selectionIndex < 1 ifTrue:[^1]. |
1121 |
selectionIndex > tabs size ifTrue:[^tabs size]. |
|
1122 |
^selectionIndex |
|
1123 |
||
1124 |
"Created: / 16-01-2008 / 17:24:27 / janfrog" |
|
1125 |
"Modified: / 17-02-2008 / 10:20:35 / janfrog" |
|
10875 | 1126 |
"Modified: / 18-11-2011 / 15:00:01 / cg" |
8779 | 1127 |
! |
1128 |
||
1129 |
selectionIndex: anInteger |
|
1130 |
selectionIndex := anInteger. |
|
1131 |
self changed:#selectionIndex |
|
1132 |
||
1133 |
"Created: / 16-01-2008 / 17:27:52 / janfrog" |
|
1134 |
"Modified: / 17-02-2008 / 09:46:45 / janfrog" |
|
1135 |
! |
|
1136 |
||
1137 |
selectionView |
|
1138 |
||
1139 |
|tab| |
|
1140 |
||
1141 |
tab := self tabs at: self selectionIndex. |
|
1142 |
^tab |
|
1143 |
ifNil:[nil] |
|
1144 |
ifNotNil:[tab view]. |
|
1145 |
||
1146 |
"Created: / 16-01-2008 / 17:31:19 / janfrog" |
|
1147 |
! |
|
1148 |
||
1149 |
tabLabels |
|
1150 |
||
1151 |
^self tabs collect:[:tab | tab label] |
|
1152 |
||
1153 |
"Created: / 16-01-2008 / 17:14:07 / janfrog" |
|
1154 |
! |
|
1155 |
||
1156 |
tabViews |
|
1157 |
||
1158 |
^self tabs collect:[:tab | tab view] |
|
1159 |
||
1160 |
"Created: / 16-01-2008 / 17:14:13 / janfrog" |
|
1161 |
! |
|
1162 |
||
1163 |
tabs |
|
1164 |
||
10875 | 1165 |
tabs isNil ifTrue:[self initializeTabs]. |
8779 | 1166 |
^tabs |
1167 |
||
1168 |
"Created: / 16-01-2008 / 16:51:53 / janfrog" |
|
10875 | 1169 |
"Modified: / 18-11-2011 / 15:00:05 / cg" |
8779 | 1170 |
! |
1171 |
||
1172 |
theObject |
|
1173 |
^ theObject |
|
1174 |
! |
|
1175 |
||
1176 |
theObject:anObject |
|
1177 |
theObject := anObject. |
|
10597 | 1178 |
self changed |
8779 | 1179 |
|
1180 |
"Modified: / 17-02-2008 / 08:38:44 / janfrog" |
|
10597 | 1181 |
"Modified: / 19-08-2011 / 09:16:25 / cg" |
8779 | 1182 |
! ! |
1183 |
||
1184 |
!Inspector2::NavigationState methodsFor:'comparing'! |
|
1185 |
||
1186 |
= anotherState |
|
1187 |
||
1188 |
^self class == anotherState class |
|
1189 |
and:[self theObject == anotherState theObject] |
|
1190 |
||
1191 |
"Created: / 21-02-2008 / 19:39:01 / janfrog" |
|
1192 |
! |
|
1193 |
||
1194 |
hash |
|
1195 |
||
1196 |
^theObject hash |
|
1197 |
||
1198 |
"Created: / 21-02-2008 / 19:38:08 / janfrog" |
|
1199 |
! ! |
|
1200 |
||
1201 |
!Inspector2::NavigationState methodsFor:'displaying'! |
|
1202 |
||
13084 | 1203 |
displayOn:aGCOrStream |
1204 |
||
1205 |
"/ what a kludge - Dolphin and Squeak mean: printOn: a stream; |
|
1206 |
"/ ST/X (and some old ST80's) mean: draw-yourself on a GC. |
|
1207 |
aGCOrStream isStream ifFalse:[ |
|
1208 |
^ super displayOn:aGCOrStream. |
|
1209 |
]. |
|
8779 | 1210 |
|
10392 | 1211 |
displayString isNil ifTrue:[ |
11280 | 1212 |
Error handle:[:ex | |
1213 |
displayString := '*ERROR*' |
|
1214 |
] do:[ |
|
1215 |
displayString := theObject printString contractAtEndTo:15. |
|
1216 |
]. |
|
13084 | 1217 |
displayString := displayString , ' [', (theObject className ? '???') , ']' |
10392 | 1218 |
]. |
13084 | 1219 |
aGCOrStream nextPutAll:displayString. |
8779 | 1220 |
|
1221 |
"Created: / 21-02-2008 / 19:53:07 / janfrog" |
|
11582
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1222 |
"Modified: / 13-06-2012 / 14:40:34 / cg" |
8779 | 1223 |
! ! |
1224 |
||
1225 |
!Inspector2::NavigationState methodsFor:'initialization'! |
|
1226 |
||
10379 | 1227 |
initializeClassBrowserTab |
11582
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1228 |
| browser spec cls canvas makeView view| |
11361 | 1229 |
|
1230 |
cls := theObject class theNonMetaclass. |
|
10379 | 1231 |
|
11361 | 1232 |
"/ spec := #singleClassBrowserSpec. |
1233 |
spec := #multipleClassBrowserSpec. |
|
1234 |
||
11582
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1235 |
makeView := [ |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1236 |
view isNil ifTrue:[ |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1237 |
browser := Tools::NewSystemBrowser new. |
11928 | 1238 |
browser isEmbeddedBrowser:true. |
11582
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1239 |
browser createBuilder. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1240 |
browser navigationState canvasType:spec. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1241 |
browser browserCanvasType:spec. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1242 |
canvas := browser browserCanvas value. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1243 |
canvas builder:(browser builder). |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1244 |
browser navigationState canvas:canvas. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1245 |
"/ browser switchToClassHierarchyView. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1246 |
"/ browser showInheritedMethods. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1247 |
browser classListGenerator value:(cls withAllSuperclasses). |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1248 |
browser sortByNameAndInheritance value:true. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1249 |
browser selectClass: cls. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1250 |
|
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1251 |
view := ApplicationSubView new client: browser spec: spec. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1252 |
]. |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1253 |
view |
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1254 |
]. |
10379 | 1255 |
|
1256 |
tabs add: |
|
1257 |
(Tools::Inspector2Tab new |
|
10629 | 1258 |
priority: 0; |
1259 |
label:'Class'; |
|
11582
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1260 |
viewHolder: makeView) |
10379 | 1261 |
|
1262 |
"Created: / 22-07-2011 / 18:48:17 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
|
11582
4daadd615c71
lazy setup of embedded browser brings up inspector much faster
Claus Gittinger <cg@exept.de>
parents:
11373
diff
changeset
|
1263 |
"Modified: / 13-06-2012 / 14:58:01 / cg" |
10379 | 1264 |
! |
1265 |
||
8779 | 1266 |
initializeCommonTabs |
1267 |
||
10379 | 1268 |
"Unfinished code" |
10629 | 1269 |
self initializeClassBrowserTab |
10379 | 1270 |
|
9996 | 1271 |
"/ tabs add: |
1272 |
"/ (Tools::Inspector2Tab new |
|
1273 |
"/ priority: 50; |
|
1274 |
"/ label:'Object'; |
|
1275 |
"/ view: ((theObject inspectorClass new inspect:theObject) |
|
1276 |
"/ yourself)) |
|
8779 | 1277 |
|
1278 |
"Created: / 16-01-2008 / 16:56:48 / janfrog" |
|
1279 |
"Modified: / 17-02-2008 / 10:29:54 / janfrog" |
|
10629 | 1280 |
"Modified: / 21-08-2011 / 10:03:04 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
8779 | 1281 |
! |
1282 |
||
1283 |
initializeExtraTabs |
|
1284 |
||
10206 | 1285 |
"/ cg: I prefer using explicit getter - so I find them in the browser |
1286 |
theObject inspector2Tabs do: [:selector| |
|
8779 | 1287 |
| tab | |
1288 |
tab := [ theObject perform: selector ] |
|
13168 | 1289 |
on: Error |
1290 |
do:[:ex| |
|
1291 |
"/ for debugging: |
|
1292 |
"/ ex reject. |
|
1293 |
Transcript show:'error in inspector setup: ',ex description. |
|
8779 | 1294 |
Tools::Inspector2Tab new |
1295 |
label: selector; |
|
1296 |
text: |
|
1297 |
(ex description, Character cr, Character cr, |
|
13168 | 1298 |
ex suspendedContext fullPrintAllString) |
1299 |
]. |
|
8779 | 1300 |
(tab notNil and:[tab isKindOf: Tools::Inspector2Tab]) |
13168 | 1301 |
ifTrue:[tabs add: tab] |
1302 |
]. |
|
8779 | 1303 |
|
1304 |
"Created: / 16-01-2008 / 17:25:24 / janfrog" |
|
1305 |
"Modified: / 17-02-2008 / 10:30:43 / janfrog" |
|
1306 |
"Modified: / 07-11-2008 / 08:40:35 / Jan Vrany <vranyj1@fel.cvut.cz>" |
|
10636 | 1307 |
"Modified (format): / 21-08-2011 / 08:01:34 / cg" |
8779 | 1308 |
! |
1309 |
||
1310 |
initializeTabs |
|
1311 |
||
1312 |
tabs := OrderedCollection new. |
|
1313 |
self initializeCommonTabs. |
|
1314 |
self initializeExtraTabs. |
|
1315 |
tabs := tabs asSortedCollection:[:a :b|a priority > b priority]. |
|
1316 |
||
1317 |
"Created: / 16-01-2008 / 16:54:28 / janfrog" |
|
1318 |
"Modified: / 17-02-2008 / 10:08:04 / janfrog" |
|
10636 | 1319 |
! |
1320 |
||
1321 |
refreshTabs |
|
1322 |
tabs := nil. |
|
1323 |
self initializeTabs. |
|
1324 |
||
1325 |
"Created: / 21-08-2011 / 08:23:11 / cg" |
|
8779 | 1326 |
! ! |
1327 |
||
1328 |
!Inspector2 class methodsFor:'documentation'! |
|
1329 |
||
10425
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
1330 |
version |
13225 | 1331 |
^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $' |
10425
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
1332 |
! |
c49cba2bd28e
only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents:
10423
diff
changeset
|
1333 |
|
8807 | 1334 |
version_CVS |
13225 | 1335 |
^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $' |
8807 | 1336 |
! |
1337 |
||
8816 | 1338 |
version_CVS_jvrany |
13225 | 1339 |
^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $' |
9996 | 1340 |
! |
1341 |
||
1342 |
version_SVN |
|
13225 | 1343 |
^ '$Id: Tools__Inspector2.st,v 1.43 2013-07-26 15:10:27 cg Exp $' |
8779 | 1344 |
! ! |
11142 | 1345 |
|
12357 | 1346 |
|
11142 | 1347 |
Inspector2 initialize! |