extensions.st
author Claus Gittinger <cg@exept.de>
Sun, 01 Sep 2013 00:34:01 +0200
changeset 13446 6706ae64f638
parent 13423 792b998bcc1a
child 13491 b3afe831ff0a
child 13504 2c37f59ad97b
permissions -rw-r--r--
class: Tools::CodeView2 changed: #codeCompletion

"{ Package: 'stx:libtool' }"!

!AbstractSyntaxHighlighter class methodsFor:'api highlighting'!

formatExpression:aString in:aClass elementsInto:elementsCollection

    ^self formatExpression:aString in:aClass

    "Created: / 25-07-2010 / 08:57:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified (format): / 04-10-2011 / 19:47:20 / cg"
! !

!AbstractSyntaxHighlighter class methodsFor:'api highlighting'!

formatMethod:aString in:aClass using:preferencesOrNil elementsInto: elements

    ^self formatMethod:aString in:aClass using:preferencesOrNil

    "Created: / 25-07-2010 / 08:58:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!ArrayedCollection methodsFor:'inspecting'!

inspector2TabForHexDump
    "a tab, showing a hex dump; defined here, so that both byteArrays and other bulk data
     containers can define it in their inspector2Tabs methods."

    |wrapper myByteSize v genDump baseAddress|

    myByteSize := self size * self class elementByteSize.

    wrapper := Plug new.
    wrapper respondTo:#size with:[ myByteSize ].
    wrapper respondTo:#at: with:[:byteIdx | self byteAt:byteIdx ].
    wrapper respondTo:#do: with:[:aBlock | 1 to:myByteSize 
                                            do:[:i |
                                                aBlock value:(self byteAt:i) 
                                            ].
                                ].

    baseAddress := 0.
    genDump := [
                    |dump|

                    v topView withWaitCursorDo:[
                        dump := AbstractFileBrowser 
                            contentsOfBytesAsHexDump:wrapper 
                            numberOfAddressDigits:(myByteSize hexPrintString size) 
                            addressStart:baseAddress.
                        v list:dump expandTabs:false scanForNonStrings:false includesNonStrings:false.
                    ].
               ].

    v := ScrollableView for:TextView. 
    genDump value.

    v scrolledView 
        menuHolder:
            [    
                |m| 

                m := v scrolledView editMenu.
                m addLabel:'-' selector:nil.
                m addLabel:'Change Base Address...' selector:#changeBase.
                m actionAt:#changeBase 
                    put:[ 
                        |s b|

                        s := Dialog request:'Base address (hex):' initialAnswer:(baseAddress printStringRadix:16).
                        s notEmptyOrNil ifTrue:[
                            b := Integer readFrom:s radix:16 onError:nil.
                            b notNil ifTrue:[
                                baseAddress := b. genDump value
                            ].
                        ].
                    ].
                m.
            ];
        menuMessage: #value.

    ^ Tools::Inspector2Tab new
            priority: 40;
            label:'Hexdump';
            view: v;
            yourself

    "Created: / 13-02-2012 / 15:08:42 / cg"
! !

!Behavior methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
        declareAllNewFrom:(super inspectorExtraAttributes ? #());
        add:(self isMeta
                ifFalse:[ '-meta' -> [ self theMetaclass ] ]
                ifTrue:[ '-nonMeta' -> [ self theNonMetaclass ] ]);
        yourself
! !

!Behavior methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    |nm|

    (nm := self name) notEmptyOrNil ifTrue:[
        ^ nm
    ].
    ^ super inspectorValueStringInListFor:anInspector
! !

!Block methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    self homeMethod isNil ifTrue:[
        ^ Dictionary new
            declareAllNewFrom:(super inspectorExtraAttributes ? #());
            add:'-code' -> 'no home method';
            add:'-source' -> 'no home method';
            yourself
    ].

    ^ Dictionary new
        declareAllNewFrom:(super inspectorExtraAttributes ? #());
        add:'-code' -> [ String streamContents:[:s | self homeMethod decompileTo:s]];
        add:'-source' -> [ self homeMethod source];
        yourself

    "Created: / 15-11-2011 / 14:24:10 / cg"
! !

!Boolean methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self printString
! !

!Breakpoint methodsFor:'accessing'!

icon

    ^description icon

    "Created: / 11-07-2011 / 18:21:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!BreakpointDescription methodsFor:'accessing'!

icon
    "do not use abbreviations like bpnt or brp or similar;
     when I do not know the exact name, I tend to search for implementors/senders
     of '*break*' or '*disabled*'.
     I will not find anything useful and have to single step if methods are named
     cryptically."

    condition isNil ifTrue:[
        state == #enabled ifTrue:[^ ToolbarIconLibrary breakpointRedEnabled].
        state == #disabled ifTrue:[^ ToolbarIconLibrary breakpointRedDisabled].
        state == #tracing ifTrue:[^ ToolbarIconLibrary tracepointBlue].
    ] ifFalse:[
        state == #enabled ifTrue:[^ ToolbarIconLibrary breakpointBlueEnabled].
        state == #disabled ifTrue:[^ ToolbarIconLibrary breakpointBlueDisabled].
    ].

    ^nil

    "Created: / 28-06-2011 / 08:29:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 27-01-2012 / 13:46:23 / cg"
! !

!ByteArray methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    |basePrinter|

    basePrinter := 
        [:arr :b |
            String
                streamContents:[:s |
                    arr class isWords ifTrue:[
                        arr asWordArray printOn:s base:b showRadix:true
                    ] ifFalse:[
                        arr class isLongs ifTrue:[
                            arr asLongIntegerArray printOn:s base:b showRadix:true
                        ] ifFalse:[
                            arr asByteArray printOn:s base:b showRadix:true
                        ]
                    ]
                ]
        ].

    ^ Dictionary new
        declareAllNewFrom:(super inspectorExtraAttributes ? #());
        add:'-hexstring' -> [ self hexPrintString "WithSeparator:Character space" ];
        add:'-hexadecimal' -> [ basePrinter value:self value:16 ];
        add:'-binary' -> [ basePrinter value:self value:2 ];
        yourself
! !

!Change methodsFor:'private'!

flattenOnto: aCollection 
	aCollection add: self
! !

!Change methodsFor:'private'!

flattenedChanges
	| changes |
	changes := OrderedCollection new.
	self flattenOnto: changes.
	^changes
! !

!Change methodsFor:'accessing'!

removed

    ^(self objectAttributeAt: #removed) ? false

    "Created: / 24-10-2009 / 21:10:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!Change methodsFor:'accessing'!

removed: aBoolean

    ^self objectAttributeAt: #removed put: aBoolean

    "Created: / 24-10-2009 / 21:11:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!ChangeSet methodsFor:'utilities'!

condenseChangesForRemoved
    "remove all changes which have been removed 
     (marked for removal by aChange removed: true)"

    |changesToRemove|

    changesToRemove := 
        self select:[:aChange | 
            aChange isCompositeChange ifTrue:[
                aChange condenseChangesForRemoved
            ].        
            aChange removed
        ].

    self condenseChanges:changesToRemove

    "Created: / 05-11-2001 / 14:21:17 / cg"
    "Modified: / 12-10-2006 / 16:51:27 / cg"
! !

!Character methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
	declareAllNewFrom:(super inspectorExtraAttributes ? #());
	add:'-hexValue' -> [ self codePoint radixPrintStringRadix:16 ];
	add:'-string' -> [ self stringSpecies with:self ];
	add:'-utf8String' -> [ self utf8Encoded ];
	add:'-utf8' -> [ self utf8Encoded asByteArray hexPrintStringWithSeparator:Character space ];
	yourself

    "
     $a inspect
    "

    "Created: / 22-10-2006 / 03:52:20 / cg"
! !

!Character methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    (asciivalue <= 16r7f) ifTrue:[
        ^ self storeString,(' "16r%1 %2"' bindWith:(asciivalue hexPrintString) with:asciivalue)
    ].
    ^ self storeString,(' "%1"' bindWith:asciivalue)
! !

!CharacterArray methodsFor:'inspecting'!

inspector2TabBytes

    ^self newInspector2Tab
        label: 'Bytes';
        priority: 25;
        view: ((ScrollableView for:EditTextView) contents: 
                (self asByteArray hexPrintStringWithSeparator:Character space); yourself)

    "Created: / 17-02-2008 / 10:10:50 / janfrog"
    "Created: / 20-07-2011 / 16:36:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 21-08-2011 / 07:32:57 / cg"
! !

!CharacterArray methodsFor:'inspecting'!

inspector2TabHTML

    ^self newInspector2Tab
        label: 'HTML';
        priority: 35;
        view: ((ScrollableView for:HTMLDocumentView) setText: self; yourself)

    "Created: / 17-02-2008 / 10:10:50 / janfrog"
    "Created: / 07-11-2011 / 12:35:15 / cg"
! !

!CharacterArray methodsFor:'inspecting'!

inspector2TabText

    ^self newInspector2Tab
        label: 'String';
        priority: 50;
        view: ((ScrollableView for:EditTextView) contents: self; yourself)

    "Created: / 17-02-2008 / 10:10:50 / janfrog"
    "Modified: / 21-08-2011 / 08:02:57 / cg"
! !

!CharacterArray methodsFor:'inspecting'!

inspector2Tabs
    HTMLDocumentView notNil ifTrue:[
        (self startsWith:'<!!DOCTYPE html') ifTrue:[
            ^ #( inspector2TabCommon inspector2TabText inspector2TabBytes inspector2TabHTML )
        ].
    ].
    ^ #( inspector2TabCommon inspector2TabText inspector2TabBytes )

    "Created: / 05-07-2011 / 13:40:27 / cg"
! !

!CharacterArray methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    |d|

    d := Dictionary new
	declareAllNewFrom:(super inspectorExtraAttributes ? #());
	add:'-utf8String' -> [ self utf8Encoded ];
	add:'-utf8' -> [ self utf8Encoded asByteArray hexPrintStringWithSeparator:Character space ];
	yourself.

    HTMLUtilities notNil ifTrue:[
	d add:'-html' -> [ HTMLUtilities escapeCharacterEntities:self ].
    ].
    ^ d

    "
     'aou' inspect
    "

    "Created: / 22-10-2006 / 03:52:20 / cg"
! !

!CharacterArray methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self basicStoreString contractTo:30.
! !

!Class methodsFor:'misc'!

inspectorClass
    "redefined to launch a ClassInspector, which knows about classVariables
     (instead of the default InspectorView)."

    ClassInspectorView notNil ifTrue:[
        ^ ClassInspectorView
    ].
    ^ super inspectorClass
! !

!Collection methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    |sz|

    (sz := self size) == 0 ifTrue:[
        ^ 'empty ' , self className
    ].
    ^ (super inspectorValueStringInListFor:anInspector),' size=',sz printString
! !

!Color methodsFor:'inspecting'!

inspectorClass
    "return the class of an appropriate inspector.
     ST/X has a specialized ColorInspectorView for that"

    ^ ColorInspectorView

    "Modified: 23.4.1996 / 13:39:50 / cg"
! !

!Color methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
	declareAllNewFrom:(super inspectorExtraAttributes ? #());
	add:'-rgb' -> [ self rgbValue hexPrintString ];
	add:'-html' -> [ self htmlPrintString ];
	yourself

    "
     Color red inspect
    "
! !

!Color methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self htmlPrintString
! !

!CompositeChange methodsFor:'utilities'!

condenseChangesForRemoved

    self changes condenseChangesForRemoved
! !

!CompositeChange methodsFor:'private'!

flattenOnto: aCollection

    changes do:[:change|change flattenOnto: aCollection]
! !

!CompositeChange methodsFor:'accessing'!

removed

    ^changes allSatisfy: [:e|e removed]
! !

!CompositeChange methodsFor:'accessing'!

removed: aBoolean

    changes do:[:e|e removed: aBoolean]
! !

!Date methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
        declareAllNewFrom:(super inspectorExtraAttributes ? #());
        add:'-dayInWeek' -> [ self dayInWeek printString , ' "', self dayOfWeekName , '"' ];
        add:'-dayInYear' -> [ self dayInYear ];
        add:'-daysInMonth' -> [ self daysInMonth ];
        add:'-monthName' -> [ self monthName ];
        add:'-leapYear' -> [ self isLeapYear ];
        yourself

    "
     Date today inspect
    "

    "Created: / 20-01-2011 / 12:19:05 / cg"
! !

!Dictionary methodsFor:'inspecting'!

inspector2TabLabel
    ^ 'Dictionary'

    "Created: / 14-07-2011 / 11:57:18 / cg"
! !

!Dictionary methodsFor:'inspecting'!

inspectorClass
    "redefined to use DictionaryInspector
     (instead of the default Inspector)."

    ^ DictionaryInspectorView
! !

!EditTextView methodsFor:'accessing-dimensions'!

absoluteXOfPosition:positionInText 
    |accumulatedX container|

    accumulatedX := 0.
    container := self.
    [ container notNil ] whileTrue:[
        accumulatedX := accumulatedX + container origin x.
        container := container isTopView ifFalse:[
                    container container
                ] ifTrue:[ nil ].
    ].
    ^ (self xOfPosition:positionInText) + accumulatedX

    "Created: / 16-02-2010 / 10:05:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!EditTextView methodsFor:'accessing-dimensions'!

absoluteYOfCursor

    | accumulatedY container |
    accumulatedY := 0.
    container := self.
    [ container notNil ] whileTrue:[
        accumulatedY := accumulatedY + container origin y.
        container := container isTopView 
            ifFalse:[container container]
            ifTrue:[nil].
    ].
    ^(self yOfCursor) + accumulatedY

    "Created: / 27-05-2005 / 07:45:53 / janfrog"
    "Modified: / 27-05-2005 / 23:03:40 / janfrog"
! !

!EditTextView methodsFor:'accessing-dimensions'!

xOfPosition: positionInText

    | line col |
    line := self lineOfCharacterPosition: positionInText.
    col  := positionInText - (self characterPositionOfLine:line col:1) + 1.
    ^
        (self xOfCol:col inVisibleLine:(self listLineToVisibleLine: line))
            - viewOrigin x.

    "Created: / 16-02-2010 / 10:04:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!EditTextView methodsFor:'accessing-dimensions'!

yOfCursor

    ^self yOfVisibleLine:cursorVisibleLine.

    "Created: / 27-05-2005 / 07:43:41 / janfrog"
! !

!EditTextView methodsFor:'accessing-dimensions'!

yOfPosition: positionInText

    | line |
    line := self lineOfCharacterPosition: positionInText.
    ^self yOfVisibleLine:(self listLineToVisibleLine: line)

    "Created: / 16-02-2010 / 10:08:21 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!ExecutableFunction methodsFor:'printing & storing'!

printStringForBrowserWithSelector:selector
    "return a printString to represent myself to the user in a browser."

    ^ self printStringForBrowserWithSelector:selector inClass:nil
! !

!Form methodsFor:'inspecting'!

inspectorClass
    "redefined to launch an ImageInspector
     (instead of the default InspectorView)."

    ^ ImageInspectorView
! !

!GenericToolbarIconLibrary class methodsFor:'image specs-22x22'!

bookmarks22x22
    "This resource specification was automatically generated
     by the ImageEditor of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the ImageEditor may not be able to read the specification."

    "
     self bookmarks22x22 inspect
     ImageEditor openOnClass:self andSelector:#bookmarks22x22
     Icon flushCachedIcons
    "

    <resource: #image>

    ^Icon
        constantNamed:'GenericToolbarIconLibrary class bookmarks22x22'
        ifAbsentPut:[(Depth8Image new) width: 22; height: 22; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
????????????????????????????????????????????????????????????????????????LT;??????????????????????????6BAD/??????????????
?????????16L''"+???????????????????????<7''95Y????????????????????????YI2[_!!C?????????????????????GXZZ&Y\0????????????I$YF
Q$YFQUBX%)VRZ%YAO34=OR????=T#9RT$9FP#(6K"(VB_718]U0%????FC)9"X"G!!HN@_W]4\V=)YT@E????????J&Y;^''Y3\''A-ZFI_UR8A??????????<Q
SF9,Z6]#WU!!SQBW??????????????1YWXU9ZTT5IP2K???????????????<)V5IOR$\>NS (????????????????M$-HP#,3KB\ZE07?????????????GST<
MB4$GATNB0(]?????????????142J18[@O<RC0XCD?????????????<!!H1$G?????1@T@ $H????????????G2@D?????????14L????????????????????
?????????????????????????????????????????????0@a') ; colorMapFromArray:#[143 162 38 146 165 38 153 167 24 155 168 21 149 168 39 149 169 39 156 169 21 151 170 40 151 171 40 156 171 30 159 173 22 160 174 20 156 174 34 154 175 41 162 176 20 159 176 32 156 176 41 156 177 41 157 177 41 159 178 37 159 178 38 163 179 26 158 179 42 163 180 27 159 180 42 162 180 35 166 181 20 160 181 40 161 181 39 160 181 42 165 181 28 162 181 37 161 181 40 162 181 38 161 181 41 168 181 23 162 182 36 161 182 41 161 182 43 168 183 20 163 183 35 162 183 41 162 183 42 170 184 22 169 185 20 169 185 23 164 185 38 164 185 40 164 185 42 164 185 43 171 186 24 171 187 21 172 187 22 170 187 29 168 187 35 165 187 44 171 188 19 173 190 19 168 189 44 174 190 21 174 190 22 170 192 37 176 192 20 170 192 38 171 193 33 171 193 38 177 193 21 176 194 19 174 194 26 172 193 47 172 193 48 178 195 20 179 195 21 179 197 19 180 197 20 180 197 21 176 197 38 181 199 19 177 199 46 183 201 20 179 200 50 184 202 19 185 202 21 184 203 18 180 201 50 183 204 21 181 203 37 184 204 27 185 205 18 181 204 45 187 205 19 187 205 21 183 206 27 187 208 18 189 208 20 189 210 17 186 208 51 191 210 20 190 211 17 190 211 19 187 209 53 191 213 17 190 211 43 193 213 19 193 214 17 194 216 16 192 215 38 195 216 20 196 217 25 196 218 18 196 217 28 196 219 17 198 220 18 199 221 17 200 222 23 201 222 28 201 224 17 200 225 16 203 223 33 203 225 20 202 226 16 202 223 51 204 224 38 204 224 41 203 227 16 204 226 26 203 226 47 204 229 16 206 227 34 203 227 53 206 230 21 207 228 39 208 228 43 207 231 26 207 228 60 209 229 48 209 229 51 210 229 52 209 232 33 210 232 39 209 231 58 211 233 46 212 234 52 213 233 63 213 234 56 214 235 59 214 237 41 215 235 62 215 235 64 215 238 49 217 238 55 217 240 46 218 239 61 219 242 53 220 242 59 222 245 56 223 245 62 224 248 57 224 248 58 224 248 64 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255]; mask:((Depth1Image new) width: 22; height: 22; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@C@@@C @@G @@G @@G0@@O0@_??8O??8O??0C?? A?>@@?<@@?<@@?>@A?>@A>>@A8_@A0F@@@@@@@@@') ; yourself); yourself]

    "Modified: / 05-05-2011 / 12:45:41 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!GenericToolbarIconLibrary class methodsFor:'image specs-16x16'!

bug16x16Icon
    "This resource specification was automatically generated
     by the ImageEditor of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the ImageEditor may not be able to read the specification."

    "
     self bug16x16Icon inspect
     ImageEditor openOnClass:self andSelector:#bug16x16Icon
     Icon flushCachedIcons
    "

    <resource: #image>

    ^Icon
        constantNamed:'GenericToolbarIconLibrary class bug16x16Icon'
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#(8)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
???????????????????????????????????????????????????3R/??????????????????O"_???????????????????7=?#J1???????????=???=IBP$
?_????????????7=W5=_W5?=O/7???????>L?PLC@0LC?_????????7=/4S[7S 8TY/=?VC?????L#L.>JI3I+A%H#[?????GA3_]U*/M3_;BPRLD_????7=
?_B@M>DE-04>?U/??????2_=HEXYQ7:R<Q_???????4>G2$%Q9QEL?5_??????????<=?\;M??????????????????=-H????????0@a') ; colorMapFromArray:#[205 205 205 227 35 35 106 106 106 98 98 98 135 135 135 163 34 34 101 5 5 124 124 124 48 2 2 227 11 11 173 173 173 218 54 54 241 241 241 235 19 19 225 225 225 219 18 18 245 58 58 214 214 214 249 46 46 90 90 90 254 61 61 36 36 36 176 176 176 233 233 233 114 114 114 255 78 78 212 33 33 230 57 57 61 61 61 94 94 94 76 76 76 19 19 19 255 57 57 161 161 161 83 83 83 217 217 217 249 249 249 255 65 65 139 2 2 27 27 27 169 169 169 253 53 53 210 28 28 251 251 251 154 154 154 117 117 117 195 1 1 245 245 245 145 145 145 218 5 5 230 230 230 69 2 2 181 181 181 11 11 11 141 141 141 249 61 61 205 21 21 165 165 165 157 157 157 241 28 28 223 223 223 109 109 109 2 2 2 245 45 45 146 0 0 69 69 69 137 137 137 140 40 40 188 1 1 206 24 24 219 33 33 255 76 76 249 49 49 249 56 56 236 236 236 121 121 121 248 53 53 171 1 1 111 40 40 237 41 41 178 21 21 205 16 16 129 129 129 163 1 1 155 18 18 85 4 4 243 68 68 73 73 73 45 45 45 202 51 51 241 40 40 86 86 86 114 1 1 210 4 4 246 41 41 148 148 148 189 189 189 209 209 209 210 17 17 158 28 28 213 5 5 205 1 1 53 53 53 217 9 9 69 40 40 187 10 10 255 74 74 218 28 28 146 11 11 65 65 65 232 37 37 101 101 101 196 26 26 245 53 53 188 26 26 213 10 10 184 184 184 206 5 5 249 65 65 172 21 21 206 34 34 195 195 195 237 32 32 131 12 12 233 29 29 179 36 36 241 37 37 139 13 13 245 49 49 180 1 1 168 37 37 198 198 198 202 202 202 228 21 21 206 10 10 206 29 29 229 30 30 255 80 80 188 20 20 245 37 37 57 57 57 252 50 50 87 42 42 172 10 10 209 13 13 155 4 4 164 11 11 242 44 44 255 70 70 225 25 25 222 14 14 237 24 24 240 49 49 205 13 13 202 44 44 201 0 0 225 17 17 186 42 42 255 72 72 122 1 1 40 40 40 157 10 10 209 8 8 222 8 8 195 41 41 223 21 21 180 11 11 255 68 68 162 28 28 194 11 11 232 25 25 131 1 1 241 32 32 246 246 246 49 49 49 224 44 44 208 2 2 227 227 227 239 239 239 239 46 46 162 20 20 245 33 33 219 219 219 238 29 29 237 37 37 171 29 29 36 46 46 250 68 68 147 16 16 182 26 26 187 187 187 24 1 1 185 32 32 229 24 24 232 33 33 150 150 150 122 12 12 229 17 17 204 27 27 242 52 52 213 2 2 200 15 15 191 191 191 217 43 43 217 12 12 115 10 10 140 16 16 200 28 28 202 6 6 215 13 13 182 41 41 57 46 46 40 46 46 233 40 40 252 70 70 173 40 40 226 28 28 46 54 54 202 22 22 203 18 18 245 72 72 191 17 17 200 37 37 10 0 0 50 52 52 252 74 74 252 72 72 247 38 38 160 40 40 231 14 14 252 68 68 200 10 10 15 15 15 211 47 47 254 254 254 253 76 76 23 23 23 237 69 69 7 7 7 144 7 7 196 8 7 32 32 32 59 59 59 90 93 93 67 67 67 70 28 28 50 56 56 232 15 16 208 4 4 237 35 35 220 12 11 232 20 20 223 62 62 0 0 0 255 255 255 255 255 255]; mask:((ImageMask new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@L@@0@C8AO C?0O<C?>G?0??#?>C?0_?@O@@L@b') ; yourself); yourself]
! !

!GenericToolbarIconLibrary class methodsFor:'image specs-24x24'!

bug24x24Icon
    "This resource specification was automatically generated
     by the ImageEditor of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the ImageEditor may not be able to read the specification."

    "
     self bug24x24Icon inspect
     ImageEditor openOnClass:self andSelector:#bug24x24Icon
     Icon flushCachedIcons
    "

    <resource: #image>

    ^Icon
        constantNamed:'GenericToolbarIconLibrary class bug24x24Icon'
        ifAbsentPut:[(Depth8Image new) width: 24; height: 24; photometric:(#palette); bitsPerSample:(#(8)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
??????????????????????????????????????????????????>6???????????????????????1???????=????????????????????????<4+????=????
????????????????????O"_???> ??????????????????????????7.?3;.?????????????????????????_4$?#K=,_????????????????7???=/?RP$
IBP$?_?????=????????MX3=???=L#H2L#H2?_7?XQW.???????????=?_7=W5=_W5=_W?7=O/7?????????????#O4''@0LC@0LC@?7=????????????????
?_6 PTEAPTEAPSW=?????????????_7=/4R[6=48NC!!"TY-M?_7=XO???????3H0L29%>JK/\2Z",FUDH#YJ????????????L9-$3N>%%ZW/YL!!D????????
????GA1W77W7V*<7M3\R>0%DAH0\D_???????_7=?_@M C_W8PTP-05MO/7=V???????B!!X4MX>WRW7WFPVZ"?//?1XV??????????<XI?7]HEXYFT]Y_)K=
<Q_???????????4XO!!?DJRU*Q9P%QSL5?U<-?????????3T5???=F$  EB@?L37?G3;=????????????????O_7D3,7=??????????????????????????<(
[RO?????????????????????????????????????????????') ; colorMapFromArray:#[205 205 205 227 35 35 106 106 106 98 98 98 135 135 135 163 34 34 101 5 5 124 124 124 48 2 2 227 11 11 173 173 173 218 54 54 241 241 241 235 19 19 225 225 225 219 18 18 245 58 58 214 214 214 249 46 46 90 90 90 254 61 61 36 36 36 176 176 176 233 233 233 114 114 114 255 78 78 212 33 33 230 57 57 61 61 61 94 94 94 76 76 76 19 19 19 255 57 57 161 161 161 83 83 83 217 217 217 249 249 249 255 65 65 139 2 2 27 27 27 169 169 169 253 53 53 210 28 28 251 251 251 154 154 154 117 117 117 195 1 1 245 245 245 145 145 145 218 5 5 230 230 230 69 2 2 181 181 181 11 11 11 141 141 141 249 61 61 205 21 21 165 165 165 157 157 157 241 28 28 223 223 223 109 109 109 2 2 2 245 45 45 146 0 0 69 69 69 137 137 137 140 40 40 188 1 1 206 24 24 219 33 33 255 76 76 249 49 49 249 56 56 236 236 236 121 121 121 248 53 53 171 1 1 111 40 40 237 41 41 178 21 21 205 16 16 129 129 129 163 1 1 155 18 18 85 4 4 243 68 68 73 73 73 45 45 45 202 51 51 241 40 40 86 86 86 114 1 1 210 4 4 246 41 41 148 148 148 189 189 189 209 209 209 210 17 17 158 28 28 213 5 5 205 1 1 53 53 53 217 9 9 69 40 40 187 10 10 255 74 74 218 28 28 146 11 11 65 65 65 232 37 37 101 101 101 196 26 26 245 53 53 188 26 26 213 10 10 184 184 184 206 5 5 249 65 65 172 21 21 206 34 34 195 195 195 237 32 32 131 12 12 233 29 29 179 36 36 241 37 37 139 13 13 245 49 49 180 1 1 168 37 37 198 198 198 202 202 202 228 21 21 206 10 10 206 29 29 229 30 30 255 80 80 188 20 20 245 37 37 57 57 57 252 50 50 87 42 42 172 10 10 209 13 13 155 4 4 164 11 11 242 44 44 255 70 70 225 25 25 222 14 14 237 24 24 240 49 49 205 13 13 202 44 44 201 0 0 225 17 17 186 42 42 255 72 72 122 1 1 40 40 40 157 10 10 209 8 8 222 8 8 195 41 41 223 21 21 180 11 11 255 68 68 162 28 28 194 11 11 232 25 25 131 1 1 241 32 32 246 246 246 49 49 49 224 44 44 208 2 2 227 227 227 239 239 239 239 46 46 162 20 20 245 33 33 219 219 219 238 29 29 237 37 37 171 29 29 36 46 46 250 68 68 147 16 16 182 26 26 187 187 187 24 1 1 185 32 32 229 24 24 232 33 33 150 150 150 122 12 12 229 17 17 204 27 27 242 52 52 213 2 2 200 15 15 191 191 191 217 43 43 217 12 12 115 10 10 140 16 16 200 28 28 202 6 6 215 13 13 182 41 41 57 46 46 40 46 46 233 40 40 252 70 70 173 40 40 226 28 28 46 54 54 202 22 22 203 18 18 245 72 72 191 17 17 200 37 37 10 0 0 50 52 52 252 74 74 252 72 72 247 38 38 160 40 40 231 14 14 252 68 68 200 10 10 15 15 15 211 47 47 254 254 254 253 76 76 23 23 23 237 69 69 7 7 7 144 7 7 196 8 7 32 32 32 59 59 59 90 93 93 67 67 67 70 28 28 50 56 56 232 15 16 208 4 4 237 35 35 220 12 11 232 20 20 223 62 62 0 0 0 255 255 255 255 255 255]; mask:((ImageMask new) width: 24; height: 24; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@H@@HH@@FH@@FH@@CX@@G<@BO<HGO>8A??0@??@@??@G??<C??8@??@G??<G??<G??XA??0C??8CO>8@G8@@A0@@@@@') ; yourself); yourself]
! !

!GenericToolbarIconLibrary class methodsFor:'image specs-32x32'!

bug32x32Icon
    <resource: #image>
    "This resource specification was automatically generated
     by the ImageEditor of ST/X."
    "Do not manually edit this!! If it is corrupted,
     the ImageEditor may not be able to read the specification."
    "
     self bug3232Icon inspect
     ImageEditor openOnClass:self andSelector:#bug3232Icon
     Icon flushCachedIcons"
    
    ^ Icon constantNamed:'GenericToolbarIconLibrary class bug3232Icon'
        ifAbsentPut:[
            (Depth8Image new)
                width:32;
                height:32;
                photometric:(#palette);
                bitsPerSample:(#( 8 ));
                samplesPerPixel:((1));
                bits:(ByteArray 
                            fromPackedString:'
??????????????????????????????????????????????????????????????????>6@/?????????????????????????????1H_????????4-????????
???????????????????????=?_??????O!!???????????????????????????????3W3R/?????=I????????????????????????????????38''?????:C?
??????????????????????????????????7.??<>;/???????????????????????????????????_7=?_7=????????????????????????????????[?7=
IO;>L/7=,_?????????????????????=?????6?=?RP$IBP$IO7=???????=????????????MX3=?????_42L#H2L#H2L/7=??=!!E^8Q????????????O.9K
?_7=@G%9^W%9^W%9JO7=O%K=O/???????????????_7=?_5_W5=_W5=_W5=_?_7=O/7??????????????????83=I0LC@0LC@0LC@0O=?SK?????????????
?????????_6 PTEAPTEAPTEAPSW=M_??????????????JC(SI?7= S#WP49(ZF"NS$N$]UO=?QU/@6G???????<-?_7=?[=D&5G[7S 8NC!!"65F[S_7=?_4U
XO??????????L#C4L29%,O"";7M3I*K8,FUD?RH6R/????????????????<3&6Q''3N>%%YV%;6]$2DS=????????????????????(@#8(92*/KN3,4=T0YZ#
K/40?????????????0P\GE]X77W7*%*/M3\7M1K9>0%D?PRLGB\Q????????<_7=?S;=<@5> C_W8^DEDC>7CT7=O/7=<U/?????????B!!X4?3VO%59I_]\Y
FPVZSH/;;8O?E!!Y9????????????????I<SAD#^BFX&IFVMI86H3H/??????????????????FB4''?]5^HEXY"Q%GVR%>$/4^<Q_???????????????4X?S8_
1DX)IV)GQ9P%D$T3MS;=W27?????????????MST!!???=1A)HHBTTHC?FL37??1<>?_?????????????????????=A''KUO9M.]0# ?????1_?????????????
??????????<=?\SN3,7=H???????????????????????????????????JFY-H???????????????????????????????????????????????????????????
?????????????????????????????????????????????0@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@');
                colorMapFromArray:#[ 205 205 205 227 35 35 106 106 106 98 98 98 135 135 135 163 34 34 101 5 5 124 124 124 48 2 2 227 11 11 173 173 173 218 54 54 241 241 241 235 19 19 225 225 225 219 18 18 245 58 58 214 214 214 249 46 46 90 90 90 254 61 61 36 36 36 176 176 176 233 233 233 114 114 114 255 78 78 212 33 33 230 57 57 61 61 61 94 94 94 76 76 76 19 19 19 255 57 57 161 161 161 83 83 83 217 217 217 249 249 249 255 65 65 139 2 2 27 27 27 169 169 169 253 53 53 210 28 28 251 251 251 154 154 154 117 117 117 195 1 1 245 245 245 145 145 145 218 5 5 230 230 230 69 2 2 181 181 181 11 11 11 141 141 141 249 61 61 205 21 21 165 165 165 157 157 157 241 28 28 223 223 223 109 109 109 2 2 2 245 45 45 146 0 0 69 69 69 137 137 137 140 40 40 188 1 1 206 24 24 219 33 33 255 76 76 249 49 49 249 56 56 236 236 236 121 121 121 248 53 53 171 1 1 111 40 40 237 41 41 178 21 21 205 16 16 129 129 129 163 1 1 155 18 18 85 4 4 243 68 68 73 73 73 45 45 45 202 51 51 241 40 40 86 86 86 114 1 1 210 4 4 246 41 41 148 148 148 189 189 189 209 209 209 210 17 17 158 28 28 213 5 5 205 1 1 53 53 53 217 9 9 69 40 40 187 10 10 255 74 74 218 28 28 146 11 11 65 65 65 232 37 37 101 101 101 196 26 26 245 53 53 188 26 26 213 10 10 184 184 184 206 5 5 249 65 65 172 21 21 206 34 34 195 195 195 237 32 32 131 12 12 233 29 29 179 36 36 241 37 37 139 13 13 245 49 49 180 1 1 168 37 37 198 198 198 202 202 202 228 21 21 206 10 10 206 29 29 229 30 30 255 80 80 188 20 20 245 37 37 57 57 57 252 50 50 87 42 42 172 10 10 209 13 13 155 4 4 164 11 11 242 44 44 255 70 70 225 25 25 222 14 14 237 24 24 240 49 49 205 13 13 202 44 44 201 0 0 225 17 17 186 42 42 255 72 72 122 1 1 40 40 40 157 10 10 209 8 8 222 8 8 195 41 41 223 21 21 180 11 11 255 68 68 162 28 28 194 11 11 232 25 25 131 1 1 241 32 32 246 246 246 49 49 49 224 44 44 208 2 2 227 227 227 239 239 239 239 46 46 162 20 20 245 33 33 219 219 219 238 29 29 237 37 37 171 29 29 36 46 46 250 68 68 147 16 16 182 26 26 187 187 187 24 1 1 185 32 32 229 24 24 232 33 33 150 150 150 122 12 12 229 17 17 204 27 27 242 52 52 213 2 2 200 15 15 191 191 191 217 43 43 217 12 12 115 10 10 140 16 16 200 28 28 202 6 6 215 13 13 182 41 41 57 46 46 40 46 46 233 40 40 252 70 70 173 40 40 226 28 28 46 54 54 202 22 22 203 18 18 245 72 72 191 17 17 200 37 37 10 0 0 50 52 52 252 74 74 252 72 72 247 38 38 160 40 40 231 14 14 252 68 68 200 10 10 15 15 15 211 47 47 254 254 254 253 76 76 23 23 23 237 69 69 7 7 7 144 7 7 196 8 7 32 32 32 59 59 59 90 93 93 67 67 67 70 28 28 50 56 56 232 15 16 208 4 4 237 35 35 220 12 11 232 20 20 223 62 62 0 0 0 255 255 255 255 255 255 ];
                mask:((ImageMask new)
                            width:32;
                            height:32;
                            photometric:(#blackIs0);
                            bitsPerSample:(#[ 1 ]);
                            samplesPerPixel:((1));
                            bits:(ByteArray 
                                        fromPackedString:'
@@@@@@@@L@@@LC@@@A 0@@@\L@@@CB@@@@Y @@@G8@@@G? @AC?8H@8??O@G??? @???0@C??0@@??<@G???>A???? G??? @O??@@G??8@_???8G???>@;?
?7@@??<@@???0@_??>@GO?3 @A?8P@@O<@@@@<@@@@@@@@@@@@@b');
                            yourself);
                yourself
        ]
! !

!GenericToolbarIconLibrary class methodsFor:'image specs-16x16'!

lint16x16Icon
    "This resource specification was automatically generated
     by the ImageEditor of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the ImageEditor may not be able to read the specification."

    "
     self lint16x16Icon inspect
     ImageEditor openOnClass:self andSelector:#lint16x16Icon
     Icon flushCachedIcons
    "

    <resource: #image>

    ^Icon
        constantNamed:'GenericToolbarIconLibrary class lint16x16Icon'
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#(8)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
??????????????????????????????????????????????????<4[_??????????????????A4W??????????????????2<A()BG??????????<A??<A1_;>
@XS??????????3<)-;^76.Z5A0O???????<P@W!!8>-3J<0+??????0\JI1,;7^?57-[;''T????<JS0P"PN3'':-V>8L??????V5@''G57.1,!!#X-''R_O???1(R
@RMW:Y*KY6+7*RW??????3P*ZU[;.:#!!/:7???????<A@6AV2?S:9+>5??????????< BC &?????;?Z??????????<XU_?????X<P@a') ; colorMapFromArray:#[0 1 0 0 2 0 1 4 0 3 6 2 30 1 0 6 9 5 34 2 2 10 12 8 43 4 2 13 15 12 15 17 13 77 0 0 16 18 15 35 14 12 17 19 16 67 6 1 19 20 18 75 7 10 21 23 20 86 9 4 25 27 24 111 4 7 103 7 10 96 10 12 32 29 28 29 30 28 31 33 30 153 2 0 33 35 33 35 36 34 110 16 16 173 0 1 36 38 35 41 37 36 165 4 0 155 7 7 128 15 14 39 41 39 157 12 16 51 42 42 207 0 4 43 45 42 58 41 39 141 19 15 199 4 0 210 3 0 221 1 4 48 49 47 231 0 12 211 7 8 172 19 10 172 19 18 52 54 51 53 55 53 234 5 23 59 54 53 176 24 21 56 57 55 57 59 56 204 19 22 195 22 24 103 47 48 227 16 9 60 61 59 198 25 19 216 20 21 61 63 60 119 48 45 228 20 20 63 65 62 211 30 27 68 69 67 69 71 68 212 32 34 242 25 29 72 74 71 74 76 74 191 45 50 245 31 38 76 78 75 77 79 76 79 80 78 138 66 66 248 36 40 240 41 43 83 85 82 216 50 52 241 43 50 195 58 61 86 88 85 244 46 46 87 89 86 89 91 88 214 58 58 193 65 67 92 93 91 248 51 49 109 90 87 185 68 87 194 67 80 87 95 125 250 54 57 173 74 96 202 67 84 159 78 103 253 56 52 188 72 90 87 99 135 129 89 121 99 101 98 73 104 148 255 59 60 159 83 106 175 81 94 94 102 132 187 78 98 215 71 85 255 61 67 169 84 104 251 66 66 104 106 103 90 106 147 151 92 119 200 81 93 107 108 106 140 99 131 162 94 119 255 72 76 144 100 128 96 112 153 228 80 83 159 97 120 111 113 110 191 90 111 206 87 104 113 115 112 87 118 163 115 117 114 83 122 166 179 100 117 118 120 117 199 99 101 231 91 88 138 113 147 120 122 119 196 101 119 123 125 122 115 123 167 213 100 113 119 123 162 180 109 128 127 129 126 208 108 109 115 131 173 185 115 140 158 122 154 173 119 144 131 133 130 130 130 163 178 122 124 181 119 147 106 139 178 136 138 135 120 139 175 126 138 175 204 121 132 132 139 172 113 146 186 136 143 176 144 146 143 121 149 184 153 142 173 135 150 181 148 150 147 125 153 188 130 153 182 179 140 167 150 152 149 205 136 148 181 145 146 136 159 189 155 157 154 140 163 193 159 161 158 161 163 160 143 166 196 162 164 161 148 167 192 164 166 163 165 165 187 197 159 173 167 169 166 152 171 196 191 163 180 157 172 191 169 171 168 216 159 166 171 173 170 208 163 179 187 169 190 217 162 175 174 176 173 159 178 203 186 173 174 207 167 175 163 178 198 213 166 176 179 181 178 198 176 192 169 185 204 183 185 182 216 175 184 209 177 189 212 180 192 204 183 198 208 183 193 188 190 187 180 192 206 194 196 193 215 191 201 187 199 213 204 198 197 211 196 210 199 201 198 190 202 216 191 203 217 201 202 212 202 204 201 208 203 201 219 201 210 205 207 203 217 203 217 206 208 205 213 207 206 223 205 214 203 211 220 211 213 210 211 212 222 214 216 213 221 215 227 217 219 216 219 221 218 228 218 224 217 222 225 221 223 220 231 221 227 216 225 233 220 226 228 224 226 223 221 229 238 231 233 230 228 234 236 233 235 232 235 238 234 249 251 248 255 255 255]; mask:((ImageMask new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@L@@0@C8AO0C?0O>C?>O?0??#?>C?0O?@OC@LLb') ; yourself); yourself]
! !

!GenericToolbarIconLibrary class methodsFor:'image specs-24x24'!

lint24x24Icon
    "This resource specification was automatically generated
     by the ImageEditor of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the ImageEditor may not be able to read the specification."

    "
     self lint24x24Icon inspect
     ImageEditor openOnClass:self andSelector:#lint24x24Icon
     Icon flushCachedIcons
    "

    <resource: #image>

    ^Icon
        constantNamed:'GenericToolbarIconLibrary class lint24x24Icon'
        ifAbsentPut:[(Depth8Image new) width: 24; height: 24; photometric:(#palette); bitsPerSample:(#(8)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
??????????????????????????????????????????????????????????????????????????=_W?????< @???????????????????????MF7???<4????
????????????????????A4W???<L?????????????????????????2AG?4HY????????????????????????K0E[()@J!!????????????????0G?????@\W>
?/;0@XS???<Z????????JUEK??</0?3<?O3<F G??0)H??????????<GO2$A-;^7-=+,9+T]A0MU????????????D@DG^G!!<>-262/O1B/??????????????
@PDPR4/I):+J+8+Q,_??????????A0(]I1,,N=7J;?W27-ZO>94NS???????B$=QABH(PN2#9>+%5[:@8L>D????????????A!!<-S_BU6=/W3)Y:.]??????
????V5AEI1<>W^:$1,"2X6I(6]IP_O??????F!!HN@RL0U>&6&(-1Y6)(=:$RI_??????N%%\@1UDXKO;(HM6^7M,<G!!Y#O??????????MB(2ZUZX>;.&*NG:
/:6D??????????<)@PLSXEY?2?S<>.Y-/;V-?????????1$A??<GRU)/]8JMT"_?/;>5#O??????????????H@ +NBXQ??????>:/=*L??????????????<9
FEU_????????6OF5????????????????????????????-]K?') ; colorMapFromArray:#[0 1 0 0 2 0 1 4 0 3 6 2 30 1 0 6 9 5 34 2 2 10 12 8 43 4 2 13 15 12 15 17 13 77 0 0 16 18 15 35 14 12 17 19 16 67 6 1 19 20 18 75 7 10 21 23 20 86 9 4 25 27 24 111 4 7 103 7 10 96 10 12 32 29 28 29 30 28 31 33 30 153 2 0 33 35 33 35 36 34 110 16 16 173 0 1 36 38 35 41 37 36 165 4 0 155 7 7 128 15 14 39 41 39 157 12 16 51 42 42 207 0 4 43 45 42 58 41 39 141 19 15 199 4 0 210 3 0 221 1 4 48 49 47 231 0 12 211 7 8 172 19 10 172 19 18 52 54 51 53 55 53 234 5 23 59 54 53 176 24 21 56 57 55 57 59 56 204 19 22 195 22 24 103 47 48 227 16 9 60 61 59 198 25 19 216 20 21 61 63 60 119 48 45 228 20 20 63 65 62 211 30 27 68 69 67 69 71 68 212 32 34 242 25 29 72 74 71 74 76 74 191 45 50 245 31 38 76 78 75 77 79 76 79 80 78 138 66 66 248 36 40 240 41 43 83 85 82 216 50 52 241 43 50 195 58 61 86 88 85 244 46 46 87 89 86 89 91 88 214 58 58 193 65 67 92 93 91 248 51 49 109 90 87 185 68 87 194 67 80 87 95 125 250 54 57 173 74 96 202 67 84 159 78 103 253 56 52 188 72 90 87 99 135 129 89 121 99 101 98 73 104 148 255 59 60 159 83 106 175 81 94 94 102 132 187 78 98 215 71 85 255 61 67 169 84 104 251 66 66 104 106 103 90 106 147 151 92 119 200 81 93 107 108 106 140 99 131 162 94 119 255 72 76 144 100 128 96 112 153 228 80 83 159 97 120 111 113 110 191 90 111 206 87 104 113 115 112 87 118 163 115 117 114 83 122 166 179 100 117 118 120 117 199 99 101 231 91 88 138 113 147 120 122 119 196 101 119 123 125 122 115 123 167 213 100 113 119 123 162 180 109 128 127 129 126 208 108 109 115 131 173 185 115 140 158 122 154 173 119 144 131 133 130 130 130 163 178 122 124 181 119 147 106 139 178 136 138 135 120 139 175 126 138 175 204 121 132 132 139 172 113 146 186 136 143 176 144 146 143 121 149 184 153 142 173 135 150 181 148 150 147 125 153 188 130 153 182 179 140 167 150 152 149 205 136 148 181 145 146 136 159 189 155 157 154 140 163 193 159 161 158 161 163 160 143 166 196 162 164 161 148 167 192 164 166 163 165 165 187 197 159 173 167 169 166 152 171 196 191 163 180 157 172 191 169 171 168 216 159 166 171 173 170 208 163 179 187 169 190 217 162 175 174 176 173 159 178 203 186 173 174 207 167 175 163 178 198 213 166 176 179 181 178 198 176 192 169 185 204 183 185 182 216 175 184 209 177 189 212 180 192 204 183 198 208 183 193 188 190 187 180 192 206 194 196 193 215 191 201 187 199 213 204 198 197 211 196 210 199 201 198 190 202 216 191 203 217 201 202 212 202 204 201 208 203 201 219 201 210 205 207 203 217 203 217 206 208 205 213 207 206 223 205 214 203 211 220 211 213 210 211 212 222 214 216 213 221 215 227 217 219 216 219 221 218 228 218 224 217 222 225 221 223 220 231 221 227 216 225 233 220 226 228 224 226 223 221 229 238 231 233 230 228 234 236 233 235 232 235 238 234 249 251 248 255 255 255]; mask:((ImageMask new) width: 24; height: 24; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@LL@@FH@@FH@@CX@@G<@BG>HGO>XA??8@?? @?? G??<G??8@??0G??<G??<G??<@??8A??8CO><@G8O@A8G@@@F') ; yourself); yourself]
! !

!GenericToolbarIconLibrary class methodsFor:'image specs-32x32'!

lint32x32Icon
    "This resource specification was automatically generated
     by the ImageEditor of ST/X."

    "Do not manually edit this!! If it is corrupted,
     the ImageEditor may not be able to read the specification."

    "
     self lint32x32Icon inspect
     ImageEditor openOnClass:self andSelector:#lint32x32Icon
     Icon flushCachedIcons
    "

    <resource: #image>

    ^Icon
        constantNamed:'GenericToolbarIconLibrary class lint32x32Icon'
        ifAbsentPut:[(Depth8Image new) width: 32; height: 32; photometric:(#palette); bitsPerSample:(#(8)); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
????????????????????????????????????????????????????????????????????!!O????????????????????????????=_JU???????2@4@???????
??????????????????????<AT_??????@Q*??????????????????????????????4H4[_????<4O????????????????????????????????0]E?????01K
?????????????????????????????????2AG??=BFX_?????????????????????????????????QQ$A@PDR?????????????????????????????????2<A
V96"$@(C!!?????????????????????<A??????<R@\W>?/;><CPA!!O????<Z????????????JUEK????K0GC?O3<?O3<>A(A????B$"G????????????@SQG
V0(ARNO#8>O#8>O_+PD9NS(%@P_?????????????A0\?JPFW-;^7-;_Z;OG&-Q5EA0MU????????????????QQ@AA718^G2?>-26+,+3<W0J????????????
????????@PDPR4-K2_^''*,+M+8+Q>+G??????????????4IHUV4)B19COVG:(\K9=.7"/XGY;E=HQZ''???????=\A0(]P"\[KC,;7\*+;?W2:-;V#8#;''P8%
S?????????<JS5D)ABH(LTC,(<_'':.W[5[:@^^CO!!@G???????????????<FG241S_BU4M/[5=ON%'')2.]???????????????????0P_K"9^=IOA5MOL1JU&
\FR47?????????????=[TDT:I1<>M%7.)KCF2KJTX6I(Z=''RTD-<????????EA(RC DAH3AJU>&6&9*K\WQ''Z&!!.=:$RMBW?????????N%%\C LUQD9 ,?.Y
(HM6!!''-3[LC0^E%_#O??????????????!!@=AS&UX9N.Y''G:Q!!W6,?]"L?????????????????4,4J#INZUZX9/.;)):(8_+0/:6D??????????????<)GPDC
D4Y U''>N2?S<?_+&[\N?-Z6I????????????FPD)??<GE$%Z[7U7 (6_T"_??;>?-Z6L????????????Q?????<AE31TXFAZRRPM?????;2<.J6R????????
??????????< BB,3NBXQM????????;*</=*L????????????????????NRDXUU???????????;#X<[W??????????????????????????????????????;WR
?????????????????????????????????????????????0@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@') ; colorMapFromArray:#[0 1 0 0 2 0 1 4 0 3 6 2 30 1 0 6 9 5 34 2 2 10 12 8 43 4 2 13 15 12 15 17 13 77 0 0 16 18 15 35 14 12 17 19 16 67 6 1 19 20 18 75 7 10 21 23 20 86 9 4 25 27 24 111 4 7 103 7 10 96 10 12 32 29 28 29 30 28 31 33 30 153 2 0 33 35 33 35 36 34 110 16 16 173 0 1 36 38 35 41 37 36 165 4 0 155 7 7 128 15 14 39 41 39 157 12 16 51 42 42 207 0 4 43 45 42 58 41 39 141 19 15 199 4 0 210 3 0 221 1 4 48 49 47 231 0 12 211 7 8 172 19 10 172 19 18 52 54 51 53 55 53 234 5 23 59 54 53 176 24 21 56 57 55 57 59 56 204 19 22 195 22 24 103 47 48 227 16 9 60 61 59 198 25 19 216 20 21 61 63 60 119 48 45 228 20 20 63 65 62 211 30 27 68 69 67 69 71 68 212 32 34 242 25 29 72 74 71 74 76 74 191 45 50 245 31 38 76 78 75 77 79 76 79 80 78 138 66 66 248 36 40 240 41 43 83 85 82 216 50 52 241 43 50 195 58 61 86 88 85 244 46 46 87 89 86 89 91 88 214 58 58 193 65 67 92 93 91 248 51 49 109 90 87 185 68 87 194 67 80 87 95 125 250 54 57 173 74 96 202 67 84 159 78 103 253 56 52 188 72 90 87 99 135 129 89 121 99 101 98 73 104 148 255 59 60 159 83 106 175 81 94 94 102 132 187 78 98 215 71 85 255 61 67 169 84 104 251 66 66 104 106 103 90 106 147 151 92 119 200 81 93 107 108 106 140 99 131 162 94 119 255 72 76 144 100 128 96 112 153 228 80 83 159 97 120 111 113 110 191 90 111 206 87 104 113 115 112 87 118 163 115 117 114 83 122 166 179 100 117 118 120 117 199 99 101 231 91 88 138 113 147 120 122 119 196 101 119 123 125 122 115 123 167 213 100 113 119 123 162 180 109 128 127 129 126 208 108 109 115 131 173 185 115 140 158 122 154 173 119 144 131 133 130 130 130 163 178 122 124 181 119 147 106 139 178 136 138 135 120 139 175 126 138 175 204 121 132 132 139 172 113 146 186 136 143 176 144 146 143 121 149 184 153 142 173 135 150 181 148 150 147 125 153 188 130 153 182 179 140 167 150 152 149 205 136 148 181 145 146 136 159 189 155 157 154 140 163 193 159 161 158 161 163 160 143 166 196 162 164 161 148 167 192 164 166 163 165 165 187 197 159 173 167 169 166 152 171 196 191 163 180 157 172 191 169 171 168 216 159 166 171 173 170 208 163 179 187 169 190 217 162 175 174 176 173 159 178 203 186 173 174 207 167 175 163 178 198 213 166 176 179 181 178 198 176 192 169 185 204 183 185 182 216 175 184 209 177 189 212 180 192 204 183 198 208 183 193 188 190 187 180 192 206 194 196 193 215 191 201 187 199 213 204 198 197 211 196 210 199 201 198 190 202 216 191 203 217 201 202 212 202 204 201 208 203 201 219 201 210 205 207 203 217 203 217 206 208 205 213 207 206 223 205 214 203 211 220 211 213 210 211 212 222 214 216 213 221 215 227 217 219 216 219 221 218 228 218 224 217 222 225 221 223 220 231 221 227 216 225 233 220 226 228 224 226 223 221 229 238 231 233 230 228 234 236 233 235 232 235 238 234 249 251 248 255 255 255]; mask:((ImageMask new) width: 32; height: 32; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
@@@@@@@@D@@@NC @@A 8@@@\L@@@CC@@@@Y0@@@G8@@@C? @AA?<H@8??G@G???0@???8@G??8@@??>@C???>A???? O???0@O??0@C??<@O???8G???>@??
?? @???@@_??8@O???@GO?38@!!?8_@@O<C8@@>@^@@@@C@@@@@@b') ; yourself); yourself]
! !

!Image methodsFor:'inspecting'!

inspector2TabImage

    ^self newInspector2Tab
        label: 'Image';
        priority: 50;
        view: ((HVScrollableView for:ImageView) image: self; yourself)

    "Created: / 11-10-2011 / 17:12:01 / cg"
! !

!Image methodsFor:'inspecting'!

inspector2Tabs
    ^ #( inspector2TabForBasicInspect inspector2TabImage )

    "Created: / 11-10-2011 / 17:11:21 / cg"
! !

!Image methodsFor:'inspecting'!

inspectorClass
    "redefined to launch an ImageInspector
     (instead of the default InspectorView)."

    (width notNil and:[height notNil]) ifTrue:[
	^ ImageInspectorView
    ].
    ^ super inspectorClass

    "Modified: 10.6.1996 / 18:23:55 / cg"
! !

!Integer methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
	declareAllNewFrom:(super inspectorExtraAttributes ? #());
	add:'-hexadecimal' -> [ self radixPrintStringRadix:16 ];
	add:'-octal' -> [ self radixPrintStringRadix:8 ];
	add:'-binary' -> [ self radixPrintStringRadix:2 ];
	yourself

    "
     123 inspect
    "

    "Created: / 18-09-2006 / 21:22:46 / cg"
    "Modified: / 06-10-2006 / 13:57:28 / cg"
! !

!Iterator methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list. 
     Redefined to avoid calling the iterator"

    ^ self classNameWithArticle
! !

!LimitedPrecisionReal methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
        declareAllNewFrom:(super inspectorExtraAttributes ? #());
        add:'-hex' ->
            [
                String
                    streamContents:[:s |
                        self byteSize to:1 by:-1 do:[:i |
                            (((self basicAt:i) printStringRadix:16) paddedTo:2 with:$0)
                                printOn:s
                        ]
                    ]
            ];
        yourself

    "Created: / 20-03-2012 / 22:34:46 / cg"
! !

!MenuView methodsFor:'accessing-behavior'!

shortKeys
    ^ shortKeys

    "Created: / 18-10-2008 / 19:16:59 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!Method methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
	declareAllNewFrom:(super inspectorExtraAttributes ? #());
	add:'-code' -> [ String streamContents:[:s | self decompileTo:s] ];
	add:'-source' -> [ self source ];
	yourself

    "
     (Method compiledMethodAt:#inspectorExtraAttributes) inspect
    "

    "Created: / 18-09-2006 / 21:34:01 / cg"
    "Modified: / 06-10-2006 / 13:57:33 / cg"
! !

!Method methodsFor:'printing & storing'!

printStringForBrowserWithSelector:selector inClass:aClass
    "return a printString to represent myself to the user in a browser.
     Defined here to allow for browsers to deal with nonStandard pseudoMethods"

    |s privInfo moreInfo p info n cls ns currentChangeSet isInChangeSet mthdPackage
     userPreferences shownSelector suppressPackage timeRounded shadowsOrNot overAllCount|

    moreInfo := ''.
    privInfo := ''.
    userPreferences := UserPreferences current.

    ns := self nameSpace.
    (ns notNil and:[ns isNameSpace]) ifTrue:[
        moreInfo := moreInfo , 
            ((' < %1 >' bindWith: ns name) asText emphasisAllAdd:
                userPreferences emphasisForNamespacedCode)

    ].

    self isWrapped ifTrue:[
        (MessageTracer isCounting:self) ifTrue:[
            (MessageTracer isCountingByReceiverClass:self) ifTrue:[
                overAllCount := (MessageTracer executionCountOfMethod:self).
                moreInfo := moreInfo , (' (cnt: %1' bindWith:overAllCount printString allBold).
                overAllCount ~~ 0 ifTrue:[
                    (MessageTracer executionCountsByReceiverClassOfMethod:self) keysAndValuesDo:[:cls :cnt |
                        |clsName percentage|

                        clsName := cls name.
                        percentage := ((cnt / overAllCount) * 100) rounded.
                        moreInfo := moreInfo , ('; %1->%2%%' bindWith:clsName with:percentage).
                    ].
                ].
                moreInfo := moreInfo , ')'.
            ] ifFalse:[
                (MessageTracer isCountingMemoryUsage:self) ifTrue:[
                    moreInfo := moreInfo , (' (mem: %1 bytes avg)' bindWith:(MessageTracer memoryUsageOfMethod:self) printString allBold).
                ] ifFalse:[
                    moreInfo := moreInfo , (' (cnt: %1)' bindWith:(MessageTracer executionCountOfMethod:self) printString allBold).
                ]
            ].
        ] ifFalse:[
            (MessageTracer isTiming:self) ifTrue:[
                info := MessageTracer executionTimesOfMethod:self.
                ((n := info count) == 0) ifTrue:[
                    moreInfo := moreInfo , (' (cnt: %1)' bindWith:n)
                ] ifFalse:[
                    timeRounded := [:millis |
                        |rnd|
                        rnd := (millis > 100)
                                 ifTrue:[ 1 ]
                                 ifFalse:[
                                     (millis > 10)
                                        ifTrue:[ 0.1 ]
                                        ifFalse:[
                                            (millis > 1)
                                                ifTrue:[ 0.01 ]
                                                ifFalse:[ 0.001 ]]].
                        millis roundTo:rnd
                    ].

                    (n == 1 or:[ info avgTimeRounded = info minTimeRounded  ]) ifTrue:[
                        moreInfo := moreInfo ,
                                    (' (t: %1ms cnt: %2)'
                                        bindWith:((timeRounded value:info avgTimeRounded) printString allBold)
                                        with:n)
                    ] ifFalse:[
                        moreInfo := moreInfo ,
                                    (' (avg: %1ms min: %2 max: %3 cnt: %4)'
                                        bindWith:((timeRounded value:info avgTimeRounded) printString allBold)
                                        with:((timeRounded value:info minTimeRounded) printString)
                                        with:((timeRounded value:info maxTimeRounded) printString)
                                        with:n)
                    ].
                ].
            ] ifFalse:[
                moreInfo := ' !!'
            ]
        ].
    ].
    p := self privacy.

    p ~~ #public ifTrue:[
        privInfo := (' (* ' , p , ' *)') allItalic.
    ].

"/    self isInvalid ifTrue:[
"/        moreInfo := ' (** not executable **)'.
"/    ].

    (self isLazyMethod not and:[self isUnloaded]) ifTrue:[
        moreInfo := ' (** unloaded **)'
    ].

    privInfo size ~~ 0 ifTrue:[
        moreInfo := privInfo , ' ' , moreInfo
    ].

    s := shownSelector := (self selectorPrintStringInBrowserFor:selector class:aClass).

    (cls := aClass) isNil ifTrue:[
        cls := self containingClass
    ].

    currentChangeSet := ChangeSet current.
    isInChangeSet := currentChangeSet includesChangeForClass:cls selector:selector.

    isInChangeSet ifTrue:[
        s := s asText emphasisAllAdd:(userPreferences emphasisForChangedCode)
    ].

    (cls isNil or:[(mthdPackage := self package) ~= cls package]) ifTrue:[
        suppressPackage := false.
        mthdPackage = PackageId noProjectID ifTrue:[
            mthdPackage := '?'.
            "/ suppressPackage := true
        ].
        suppressPackage ifFalse:[
            shadowsOrNot := (self isShadowingExtension)
                                ifTrue:[' shadowed' ]
                                ifFalse:[ '' ].
            p := ' [' , (((mthdPackage ? '?'), shadowsOrNot allBold),' ') allItalic , '] '.
            p := p asText emphasisAllAdd:(userPreferences emphasisForDifferentPackage).
            s := s , ' ' , p
        ].
    ].

    moreInfo size == 0 ifTrue:[^ s].

    s := shownSelector , moreInfo.

    self isInvalid ifTrue:[
        s := s asText emphasizeAllWith:(userPreferences emphasisForObsoleteCode).
    ].
    ^ s

    "Modified: / 23-01-1998 / 13:15:15 / stefan"
    "Created: / 05-02-2000 / 22:55:56 / cg"
    "Modified: / 05-03-2007 / 16:18:53 / cg"
    "Modified: / 20-07-2010 / 15:39:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!Method methodsFor:'printing & storing'!

selectorPrintStringInBrowserFor:selector
    ^ selector
! !

!Method methodsFor:'printing & storing'!

selectorPrintStringInBrowserFor:selector class:aClass
    |selPart idx|

    selector isNameSpaceSelector ifFalse:[^ selector].

    idx := selector indexOf:$: startingAt:3.
    "
    nsPart := selector copyFrom:2 to:idx-1.
    ns := Smalltalk at:nsPart asSymbol.
    "
    selPart := selector copyFrom:idx+2.
    ^ selPart ", ' {',nsPart,'}'."

    "Modified: / 20-07-2010 / 10:33:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!MethodDictionary methodsFor:'inspecting'!

inspectorClass
    "redefined to use DictionaryInspector
     (instead of the default Inspector)."

    ^ DictionaryInspectorView

    "Created: 12.6.1996 / 12:29:13 / stefan"
! !

!NameSpace class methodsFor:'inspecting'!

inspectorClass
    "{ Pragma: +optSpace }"

    "redefined to launch a DictionaryInspector
     (instead of the default Inspector)."

    ^ DictionaryInspectorView


! !

!Object methodsFor:'debugging'!

inspect
    "{ Pragma: +optSpace }"

    "launch an inspector on the receiver.
     this method (or better: inspectorClass) can be redefined in subclasses
     to start special inspectors."

    |cls|

    cls := (Smalltalk classNamed: #'Tools::Inspector2') 
                ifNil:[self inspectorClass].

    cls isNil ifTrue:[
        ^ self basicInspect
    ].
    cls openOn:self

    "
     Object new inspect
     (1 @ 2) inspect
     Smalltalk inspect
     #(1 2 3) asOrderedCollection inspect
     (Color red) inspect
     (Image fromFile:'bitmaps/garfield.gif') inspect
    "
! !

!Object methodsFor:'inspecting'!

inspector2TabCommon
    "a tab, showing the old inspector"

    ^ self inspector2TabForInspectorClass

    "Created: / 24-05-2011 / 14:56:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 05-07-2011 / 14:06:28 / cg"
! !

!Object methodsFor:'inspecting'!

inspector2TabForBasicInspect
    "a tab, showing the old basic inspector"

    ^ Tools::Inspector2Tab new
            priority: 40;
            label:'Basic';
            view: (InspectorView new inspect:self);
            yourself

    "Created: / 05-07-2011 / 13:59:59 / cg"
! !

!Object methodsFor:'inspecting'!

inspector2TabForInspectorClass
    "a tab, showing the old inspector"

    ^ Tools::Inspector2Tab new
            priority: 100;
            label:(self inspector2TabLabel);
            view: (self inspectorClass new inspect:self);
            yourself

    "Created: / 05-07-2011 / 14:06:16 / cg"
! !

!Object methodsFor:'inspecting'!

inspector2TabLabel
    "label of the main tab"

    ^ 'Object'

    "Created: / 14-07-2011 / 11:56:23 / cg"
! !

!Object methodsFor:'inspecting'!

inspector2Tabs
    self inspectorClass ~~ Inspector ifTrue:[
        ^ #( inspector2TabCommon inspector2TabForBasicInspect )
    ].

    ^ #( inspector2TabCommon )

    "Created: / 05-07-2011 / 13:39:24 / cg"
! !

!Object methodsFor:'debugging'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector.
     Answers a dictionary of aString -> aBlock.
     aString is name of extra attribute and MUST start with minus ($-).
     aBlock returns the object representing extra attribute."

    ^Dictionary new

    " Try to uncomment following and inspect any object "

"/    ^Dictionary new
"/        add:'-test' -> ['TEST TEST'];
"/        yourself

    "Created: / 16-08-2005 / 20:43:33 / janfrog"
    "Modified: / 02-09-2005 / 19:00:01 / janfrog"
    "Modified: / 04-10-2006 / 14:33:34 / cg"
! !

!Object methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list.
     Only to be redefined where it is guaranteed, that the returned string is short."

    ^ self classNameWithArticle

    "Created: / 13-06-2012 / 12:50:26 / cg"
! !

!Object methodsFor:'testing'!

isTestCaseLike

    ^false

    "Created: / 28-02-2011 / 21:30:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!Object methodsFor:'debugging'!

newInspector2Tab

    "Use Smalltalk>>at: to trick the dependency detector"

    ^(Smalltalk at: #'Tools::Inspector2Tab') 
        ifNil:[self error:'Inspector2 not available!! Something is rotten...']
        ifNotNil:[(Smalltalk at: #'Tools::Inspector2Tab') new]
! !

!OrderedCollection methodsFor:'inspecting'!

inspectorClass
    "redefined to launch an OrderedCollectionInspector
     (instead of the default InspectorView)."

    ^ OrderedCollectionInspectorView

    "
     (OrderedCollection withAll:#(3 2 1)) inspect
     (OrderedCollection withAll:#(3 2 1)) removeFirst; yourself; inspect
     #(0 8 15 3 99 2) asSortedCollection inspect
    "
! !

!Point methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self printString
! !

!PopUpMenu methodsFor:'converting'!

asMenu
    "convert myself into a newStyle Menu instance, from which a MenuPanel is created.
     The old PopUpMenu and MenuView is going to be obsoleted (but still supported
     for backward compatibility)"

    | menu  |

    menu := Menu new receiver: menuView receiver.
    1 to: self numberOfItems do:[:i| 
        | menuItem subMenu lbl checkHolder|

        lbl := (self labels at: i).
        (lbl includesString:'\c') ifTrue:[
            lbl := lbl copyReplaceString:'\c' withString:''.
            checkHolder := (menuView checkToggleAt:i) asValue.
        ].

        menuItem := MenuItem new
                        label: lbl;
                        itemValue: (menuView selectors at: i);
                        enabled: (menuView isEnabled: i);
                        shortcutKey: (menuView shortKeys at: i);
                        yourself.

        (subMenu := self subMenuAt: i) notNil ifTrue:[
            menuItem submenu: subMenu asMenu
        ].
        checkHolder notNil ifTrue:[
            checkHolder onChangeEvaluate:[ 
                menuView receiver perform:(menuView selectors at: i) with:checkHolder value 
            ].
            menuItem indication:checkHolder.
            menuItem hideMenuOnActivated:false.
        ].
        menu addItem: menuItem.
    ].
    ^ menu.

    "Created: / 18-10-2008 / 19:01:32 / Jan Vrany <vranyj1@fel.cvut.cz>"
    "Modified: / 09-09-2012 / 13:10:25 / cg"
! !

!ProfileTree methodsFor:'accessing'!

method

    class ifNil:[^nil].
    ^class >> selector

    "Created: / 01-12-2007 / 22:50:16 / janfrog"
    "Modified: / 07-11-2008 / 08:40:35 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!ProfileTree methodsFor:'accessing'!

package

    self method ifNil:[^nil].
    ^self method package

    "Created: / 01-12-2007 / 22:50:28 / janfrog"
    "Modified: / 07-11-2008 / 08:40:35 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!Rectangle methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self origin printString,'->',self corner printString
! !

!RunArray methodsFor:'user interface'!

inspectorClass
    "Re-reimplemented so that we don't get an ordered collection inspector
     which would get very confused when confronted with a runArray."

    ^ InspectorView

    "Modified: / 30.10.1997 / 14:28:20 / cg"
! !

!SelectionInListModelView methodsFor:'accessing'!

textStartLeft
    ^ textStartLeft
! !

!SelectionInListModelView methodsFor:'accessing'!

textStartLeft:something
    textStartLeft := something.
! !

!Set methodsFor:'inspecting'!

inspectorClass
    "redefined to use SetInspector
     (instead of the default Inspector)."

    ^ SetInspectorView
! !

!SimpleView methodsFor:'testing'!

isCodeView2

    ^ false

    "Created: / 20-07-2010 / 15:42:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!Smalltalk class methodsFor:'queries'!

inspectorClass
    "redefined to use DictionaryInspector
     (instead of the default Inspector)."

    ^ DictionaryInspectorView
! !

!StringCollection methodsFor:'inspecting'!

inspector2TabText

    ^self newInspector2Tab
        label: 'String';
        priority: 25;
        view: ((ScrollableView for:TextView) contents: self asString; yourself)

    "Created: / 17-02-2008 / 10:13:07 / janfrog"
! !

!StringCollection methodsFor:'inspecting'!

inspector2Tabs
    ^ #(inspector2TabCommon inspector2TabText )

    "Created: / 05-07-2011 / 13:40:43 / cg"
! !

!Symbol methodsFor:'accessing'!

formattedCode

    "Used by CodeGenerator"

    ^self

    "Created: / 07-07-2009 / 20:03:21 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!Symbol methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self storeString
! !

!Text methodsFor:'inspecting'!

inspector2TabText

    ^self newInspector2Tab
        label: 'Text';
        priority: 50;
        view: ((ScrollableView for:EditTextView) contents: self; yourself)

    "Created: / 17-02-2008 / 09:03:36 / janfrog"
    "Modified: / 17-02-2008 / 10:28:33 / janfrog"
    "Modified: / 21-08-2011 / 08:02:46 / cg"
! !

!Text methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
	declareAllNewFrom:(super inspectorExtraAttributes ? #());
	add:'-text' -> [ self ];
	yourself

    "
     'hello' allBold inspect
    "

    "Created: / 18-09-2006 / 21:25:52 / cg"
    "Modified: / 06-10-2006 / 13:57:38 / cg"
! !

!Timestamp methodsFor:'inspecting'!

inspectorExtraAttributes
    "extra (pseudo instvar) entries to be shown in an inspector."

    ^ Dictionary new
        declareAllNewFrom:(super inspectorExtraAttributes ? #());
        add:'-dayInWeek' -> [ self dayInWeek printString , ' "', self asDate dayOfWeekName , '"' ];
        add:'-dayInYear' -> [ self dayInYear ];
        add:'-daysInMonth' -> [ self asDate daysInMonth ];
        add:'-monthName' -> [ self asDate monthName ];
        add:'-leapYear' -> [ self asDate isLeapYear ];
        yourself

    "
     Timestamp now inspect
    "

    "Created: / 20-01-2011 / 12:19:05 / cg"
! !

!Timestamp methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self printString
! !

!UUID methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ self printString
! !

!UndefinedObject methodsFor:'inspecting'!

inspectorValueStringInListFor:anInspector
    "returns a string to be shown in the inspector's list"

    ^ 'nil'
! !

!UninterpretedBytes methodsFor:'inspecting'!

inspector2Tabs
    ^ #( inspector2TabCommon inspector2TabForHexDump )

    "Created: / 27-02-2012 / 21:51:36 / cg"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

alwaysOpenNewTabWhenCtrlClick

    "
        UserPreferences current alwaysOpenNewTabWhenCtrlClick 
    "


    ^ self at:#alwaysOpenNewTabWhenCtrlClick ifAbsent:false.

    "Created: / 19-10-2008 / 08:00:53 / Jan Vrany <vranyj1@fel.cvut.cz>"
    "Modified: / 14-02-2010 / 19:37:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

alwaysOpenNewTabWhenCtrlClick: aBoolean

    self at:#alwaysOpenNewTabWhenCtrlClick put: aBoolean

    "Created: / 19-10-2008 / 08:01:45 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !

!UserPreferences methodsFor:'obsolete'!

codeView2AutoIndent
    <resource: #obsolete>

    ^self at:#codeView2AutoIndent ifAbsent: false

    "
     UserPreferences current codeView2AutoIndent 
     UserPreferences current codeView2AutoIndent:true 
     UserPreferences current codeView2AutoIndent:false"

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 07-08-2011 / 12:46:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'obsolete'!

codeView2AutoIndent: aBoolean
    <resource: #obsolete>

    ^self at:#codeView2AutoIndent put: aBoolean

    "
     UserPreferences current codeView2AutoIndent 
     UserPreferences current codeView2AutoIndent:true 
     UserPreferences current codeView2AutoIndent:false"

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 07-08-2011 / 12:47:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

codeView2ShowAcceptCancel
    ^self at:#codeView2ShowAcceptCancel ifAbsent: false

    "
     UserPreferences current codeView2ShowAcceptCancel 
     UserPreferences current codeView2ShowAcceptCancel:true 
     UserPreferences current codeView2ShowAcceptCancel:false"

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 10-10-2011 / 16:41:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

codeView2ShowAcceptCancel: aBoolean
    ^self at:#codeView2ShowAcceptCancel put: aBoolean

    "
     UserPreferences current codeView2ShowAcceptCancel 
     UserPreferences current codeView2ShowAcceptCancel:true 
     UserPreferences current codeView2ShowAcceptCancel:false"

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 10-10-2011 / 16:40:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showBookmarkBar
    "experimental."

    ^ self at:#showBookmarkBar ifAbsent: false "true".

    "
     UserPreferences current showBookmarkBar
     UserPreferences current showBookmarkBar:true
     UserPreferences current showBookmarkBar:false
    "

    "Created: / 18-05-2011 / 16:48:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 03-06-2011 / 11:01:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showBookmarkBar: aBoolean
    "experimental."

    ^ self at:#showBookmarkBar put: aBoolean

    "
     UserPreferences current showBookmarkBar
     UserPreferences current showBookmarkBar:true
     UserPreferences current showBookmarkBar:false
    "

    "Created: / 18-05-2011 / 17:28:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showEmbeddedTestRunnerInBrowser
    "experimental."

    ^ self at:#showEmbeddedTestRunnerInBrowser ifAbsent:true

    "
     UserPreferences current showEmbeddedTestRunnerInBrowser
     UserPreferences current showEmbeddedTestRunnerInBrowser:true
     UserPreferences current showEmbeddedTestRunnerInBrowser:false
    "

    "Created: / 11-03-2010 / 10:11:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showEmbeddedTestRunnerInBrowser:aBoolean
    "experimental."

    ^ self at:#showEmbeddedTestRunnerInBrowser put:aBoolean

    "
     UserPreferences current showEmbeddedTestRunnerInBrowser:true
     UserPreferences current showEmbeddedTestRunnerInBrowser:false
    "

    "Created: / 11-03-2010 / 10:11:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showGlobalHistory
    "Whether to show global history in the browser"

    ^ self at:#showGlobalHistory ifAbsent: true.

    "
     UserPreferences current showGlobalHistory
     UserPreferences current showGlobalHistory:true
     UserPreferences current showGlobalHistory:false
    "

    "Created: / 07-07-2011 / 00:03:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified (comment): / 26-07-2012 / 16:35:54 / cg"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showGlobalHistory: aBoolean
    "Whether to show global history in the browser"

    ^ self at:#showGlobalHistory put: aBoolean

    "
     UserPreferences current showGlobalHistory
     UserPreferences current showGlobalHistory:true
     UserPreferences current showGlobalHistory:false
    "

    "Created: / 07-07-2011 / 00:02:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified (comment): / 26-07-2012 / 16:35:57 / cg"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showLocalHistory
    "Whether to show local (per tab) history in the browser"

    ^ self at:#showLocalHistory ifAbsent: true.

    "
     UserPreferences current showLocalHistory
     UserPreferences current showLocalHistory:true
     UserPreferences current showLocalHistory:false
    "

    "Created: / 07-07-2011 / 00:02:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified (comment): / 26-07-2012 / 16:35:31 / cg"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showLocalHistory: aBoolean
    "Whether to show local (per tab) history in the browser"

    ^ self at:#showLocalHistory put: aBoolean

    "
     UserPreferences current showLocalHistory
     UserPreferences current showLocalHistory:true
     UserPreferences current showLocalHistory:false
    "

    "Created: / 07-07-2011 / 00:02:13 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified (comment): / 26-07-2012 / 16:35:41 / cg"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showMethodTemplate
    "experimental."

    ^ self at:#showMethodTemplate ifAbsent:true

    "
     UserPreferences current showMethodTemplate
     UserPreferences current showMethodTemplate:true
     UserPreferences current showMethodTemplate:false
    "

    "Created: / 12-02-2010 / 12:06:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

showMethodTemplate:aBoolean
    "experimental."

    ^ self at:#showMethodTemplate put:aBoolean

    "
     UserPreferences current showMethodTemplate:true
     UserPreferences current showMethodTemplate:false
    "

    "Created: / 12-02-2010 / 12:05:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

sortAndIndentClassesByInheritance

    ^ self at:#sortAndIndentClassesByInheritance ifAbsent: false

    "
     UserPreferences current sortAndIndentClassesByInheritance
     UserPreferences current sortAndIndentClassesByInheritance:true
     UserPreferences current sortAndIndentClassesByInheritance:false
    "

    "Created: / 06-07-2011 / 19:09:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

sortAndIndentClassesByInheritance: aBoolean

    ^ self at:#sortAndIndentClassesByInheritance put: aBoolean

    "
     UserPreferences current sortAndIndentClassesByInheritance
     UserPreferences current sortAndIndentClassesByInheritance:true
     UserPreferences current sortAndIndentClassesByInheritance:false
    "

    "Created: / 06-07-2011 / 19:09:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

sourceCodeManagementMenuLayout

    "Defines the layout of source code management menus in 
     NewSystemBrowser. Can be one of:
        #old        - old style as of 2011-10-06
        #compact    - only one Repository menu, SCM specific menus underneath
        #inline     - Repository and then SCM specific menus inlined
    "

    ^ self at:#sourceCodeManagementMenuLayout ifAbsent: #old

    "
     UserPreferences current sourceCodeManagementMenuLayout
     UserPreferences current sourceCodeManagementMenuLayout: #inline
     UserPreferences current sourceCodeManagementMenuLayout: #compact
     UserPreferences current sourceCodeManagementMenuLayout: #old
    "

    "Created: / 06-10-2011 / 18:42:23 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

sourceCodeManagementMenuLayout: aSymbol

    "Defines the layout of source code management menus in 
     NewSystemBrowser. Can be one of:
        #old        - old style as of 2011-10-06
        #compact    - only one Repository menu, SCM specific menus underneath
        #inline     - Repository and then SCM specific menus inlined
    "
    self assert: (#(old compact inline) includes: aSymbol).

    ^ self at:#sourceCodeManagementMenuLayout put: aSymbol

    "
     UserPreferences current sourceCodeManagementMenuLayout
     UserPreferences current sourceCodeManagementMenuLayout: #inline
     UserPreferences current sourceCodeManagementMenuLayout: #compact
     UserPreferences current sourceCodeManagementMenuLayout: #old
    "

    "Created: / 06-10-2011 / 18:44:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2In: appSymbol
    "no longer used - will vanish.
     Now the use of the codeView2 is globally enabled/disabled by useCodeView2InTools"

    ^self useCodeView2InTools "/ or:[self perform: ('useCodeView2In' , appSymbol) asSymbol]. 


    "
    UserPreferences current useCodeView2In: #Browser 
    UserPreferences current useCodeView2InBrowser:true 
    UserPreferences current useCodeView2InBrowser:false

    UserPreferences current useCodeView2InTools:true
    UserPreferences current useCodeView2InTools:false
    "

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 26-07-2011 / 10:26:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InBrowser
    "no longer used - will vanish.
     Now the use of the codeView2 is globally enabled/disabled by useCodeView2InTools"

    <resource: #obsolete>
    ^self at:#useCodeView2InBrowser ifAbsent: false

    "
     UserPreferences current useCodeView2InBrowser 
     UserPreferences current useCodeView2InBrowser:true 
     UserPreferences current useCodeView2InBrowser:false"

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 26-07-2011 / 10:22:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InBrowser: aBoolean
    "no longer used - will vanish.
     Now the use of the codeView2 is globally enabled/disabled by useCodeView2InTools"

    <resource: #obsolete>
    ^self at:#useCodeView2InBrowser put: aBoolean

    "
     UserPreferences current useCodeView2InBrowser 
     UserPreferences current useCodeView2InBrowser:true 
     UserPreferences current useCodeView2InBrowser:false"

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 26-07-2011 / 10:21:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InDebugger
    "no longer used - will vanish.
     Now the use of the codeView2 is globally enabled/disabled by useCodeView2InTools"

    <resource: #obsolete>
    ^self at:#useCodeView2InDebugger ifAbsent: false

    "
     UserPreferences current useCodeView2InDebugger 
     UserPreferences current useCodeView2InDebugger:true 
     UserPreferences current useCodeView2InDebugger:false
    "

    "Created: / 26-07-2011 / 10:22:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InDebugger: aBoolean
    "no longer used - will vanish.
     Now the use of the codeView2 is globally enabled/disabled by useCodeView2InTools"

    <resource: #obsolete>
    ^self at:#useCodeView2InDebugger put: aBoolean

    "
     UserPreferences current useCodeView2InDebugger 
     UserPreferences current useCodeView2InDebugger:true 
     UserPreferences current useCodeView2InDebugger:false"

    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Created: / 26-07-2011 / 10:22:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InTools
    ^self at:#useCodeView2InTools ifAbsent:true "false"

    "
     UserPreferences current useCodeView2InTools 
     UserPreferences current useCodeView2InTools:true 
     UserPreferences current useCodeView2InTools:false"

    "Created: / 12-02-2010 / 12:13:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
    "Modified: / 15-02-2010 / 09:26:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InTools:aBoolean 
    ^self at:#useCodeView2InTools put:aBoolean

    "
     UserPreferences current useCodeView2InBrowser:true
     UserPreferences current useCodeView2InBrowser:false"
    "Created: / 12-02-2010 / 12:14:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InWorkspace
    "no longer used - will vanish.
     Now the use of the codeView2 is globally enabled/disabled by useCodeView2InTools"

    <resource: #obsolete>
    ^self at:#useCodeView2InWorkspace ifAbsent: false

    "
     UserPreferences current useCodeView2InWorkspace 
     UserPreferences current useCodeView2InWorkspace:true 
     UserPreferences current useCodeView2InWorkspace:false
    "

    "Created: / 26-07-2011 / 10:23:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-code view'!

useCodeView2InWorkspace: aBoolean
    "no longer used - will vanish.
     Now the use of the codeView2 is globally enabled/disabled by useCodeView2InTools"

    <resource: #obsolete>
    ^self at:#useCodeView2InWorkspace put: aBoolean

    "
     UserPreferences current useCodeView2InWorkspace 
     UserPreferences current useCodeView2InWorkspace:true 
     UserPreferences current useCodeView2InWorkspace:false
    "

    "Created: / 26-07-2011 / 10:22:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

useInPlaceSearchInBrowserLists

    ^ self at:#useInPlaceSearchInBrowserLists ifAbsent: false

    "
     UserPreferences current useInPlaceSearchInBrowserLists
     UserPreferences current useInPlaceSearchInBrowserLists:true
     UserPreferences current useInPlaceSearchInBrowserLists:false
    "

    "Created: / 28-07-2011 / 09:34:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

useInPlaceSearchInBrowserLists: aBoolean

    ^ self at:#useInPlaceSearchInBrowserLists put: aBoolean

    "
     UserPreferences current useInPlaceSearchInBrowserLists
     UserPreferences current useInPlaceSearchInBrowserLists:true
     UserPreferences current useInPlaceSearchInBrowserLists:false
    "

    "Created: / 28-07-2011 / 09:35:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

webBrowserLikeLayout
    "experimental."

    ^ self at:#webBrowserLikeLayout ifAbsent: false

    "
     UserPreferences current webBrowserLikeLayout
     UserPreferences current webBrowserLikeLayout:true
     UserPreferences current webBrowserLikeLayout:false
    "

    "Created: / 07-06-2011 / 14:33:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!UserPreferences methodsFor:'accessing-prefs-browser'!

webBrowserLikeLayout: aBoolean
    "experimental."

    ^ self at:#webBrowserLikeLayout put: aBoolean

    "
     UserPreferences current webBrowserLikeLayout
     UserPreferences current webBrowserLikeLayout:true
     UserPreferences current webBrowserLikeLayout:false
    "

    "Created: / 07-06-2011 / 14:31:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
! !

!stx_libtool class methodsFor:'documentation'!

extensionsVersion_CVS
    ^ '$Header: /cvs/stx/stx/libtool/extensions.st,v 1.116 2013-08-31 11:33:18 cg Exp $'
! !