InspectorView.st
author Claus Gittinger <cg@exept.de>
Tue, 04 Mar 2014 13:53:11 +0100
changeset 14102 6128c780a9c5
parent 14070 f95472e8cb38
child 14184 96fc012dd2e9
permissions -rw-r--r--
class: InspectorView changed: #setInitialSelection
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
     1
"
5
claus
parents: 3
diff changeset
     2
 COPYRIGHT (c) 1989 by Claus Gittinger
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
     3
              All Rights Reserved
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
     4
571fd5eee315 Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
571fd5eee315 Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
571fd5eee315 Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
571fd5eee315 Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
571fd5eee315 Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
571fd5eee315 Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
571fd5eee315 Initial revision
claus
parents:
diff changeset
    11
"
2657
0623fcb714f7 care for nil strings
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
    12
"{ Package: 'stx:libtool' }"
0623fcb714f7 care for nil strings
Claus Gittinger <cg@exept.de>
parents: 2598
diff changeset
    13
93
claus
parents: 80
diff changeset
    14
SimpleView subclass:#InspectorView
11909
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    15
	instanceVariableNames:'listView labelView workspace inspectedObject selectedLine nShown
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    16
		hasMore monitorProcess hideReceiver integerDisplayRadix
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    17
		inspectHistory allowFollow isStandaloneInspector selectionIndex
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    18
		object inspectedObjectHolder displayStringMessage
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    19
		suppressPseudoSlots dereferenceValueHolders suppressHeadline
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
    20
		headLineLabel sortOrder hideMessages hideHashes
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
    21
		holderChangeInterest'
11909
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    22
	classVariableNames:'DefaultIcon IdDictionary NextSequentialID LastExtent
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    23
		DefaultIntegerDisplayRadix ExpandArraysInAllLists'
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    24
	poolDictionaries:''
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    25
	category:'Interface-Inspector'
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
    26
!
571fd5eee315 Initial revision
claus
parents:
diff changeset
    27
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
    28
!InspectorView class methodsFor:'documentation'!
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    30
copyright
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    31
"
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    32
 COPYRIGHT (c) 1989 by Claus Gittinger
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
    33
              All Rights Reserved
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    34
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    35
 This software is furnished under a license and may be used
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    36
 only in accordance with the terms of that license and with the
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    37
 inclusion of the above copyright notice.   This software may not
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    38
 be provided or otherwise made available to, or used by, any
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    39
 other person.  No title to or ownership of the software is
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    40
 hereby transferred.
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    41
"
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    42
!
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    43
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    44
documentation
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    45
"
1570
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    46
    This class implements a graphical inspector.
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    47
    Inspecting can be done on an object -
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    48
    (where its instvarnames/values are inspected)
1570
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    49
    or a list of objects (where a nameArray/valuesArray is inspected).
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    50
    The later is used by the debugger to inspect method variables/args.
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    51
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    52
    The system calls the inspector through the global variable 'Inspector'
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    53
    which is bound to this class (but could be redefined - it actually is
1570
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    54
    set to MiniInspector in a smalltalk without graphical user interface,
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    55
    or to NewInspector if that is wanted).
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
    56
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    57
    Also notice, that there are two methods to inspect an object:
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    58
    sending #basicInspect to any object, will open this kind of inspector on 
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    59
    it (showing instance variables which are physically present).
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    60
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    61
    Sending it #inspect, will - depending on the object - sometimes invoke a
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    62
    specialized inspector. 
1570
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    63
    (see OrderedCollectionInspectorView, ImageInspectorView, 
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    64
     ColorInspectorView etc. as examples).
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    65
446
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    66
    You can also open a monitoring inspector, which displays some instance
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    67
    variable in regular intervals. See #openOn:monitor:.
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    68
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    69
    examples:
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    70
            #(1 2 3 4) asOrderedCollection inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    71
            #(1 2 3 4) asOrderedCollection basicInspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    72
            (Array new:10000) inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    73
            (Image fromFile:'bitmaps/claus.gif') inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    74
            (Image fromFile:'bitmaps/claus.gif') basicInspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    75
            (Image fromFile:'bitmaps/SBrowser.xbm') inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    76
            (Image fromFile:'bitmaps/SBrowser.xbm') basicInspect
446
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    77
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    78
            InspectorView openOn:Display
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    79
            InspectorView openOn:Display monitor:'shiftDown'
11660
bf523c8f3232 changed: #documentation
Claus Gittinger <cg@exept.de>
parents: 11658
diff changeset
    80
            InspectorView openOn:(Image fromScreen)
bf523c8f3232 changed: #documentation
Claus Gittinger <cg@exept.de>
parents: 11658
diff changeset
    81
            InspectorView openOn:(Image fromFile:'banner8.xpm')
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    82
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    83
    The InspectorView can also be used as a subComponent within another view.
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    84
    In this case, the isStandAlone flag should be cleared, to prevent the
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    85
    inspector from changing the topViews window label.
510
6543e55fb227 documentation
Claus Gittinger <cg@exept.de>
parents: 472
diff changeset
    86
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    87
    Notice:
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    88
        the instvars 'inspectedObject' and 'selectedLine' have been 
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    89
        renamed to 'object' and 'selectionIndex' for squeak compatibility;
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    90
        however, the old vars are kept (in sync) for a while, to allow for
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    91
        smooth migration.
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    92
6940
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    93
  Controlling the contents from the inspected object.
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    94
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    95
    By redefining inspectorExtraAttributes or inspectorExtraNamedFields, the inspected
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    96
    object can add items to the list of fields as ashown in the left list-view of the inspector.
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    97
    These methods are meant to return a sequencable Collection of Associations, which represent
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    98
    of pseudo slot-name, slot-value pairs.
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    99
    In the list, extra attributes are shown with a dash (-), extra named fields are marked with a tick (`).
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
   100
    These are added (read only) to the list.
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
   101
510
6543e55fb227 documentation
Claus Gittinger <cg@exept.de>
parents: 472
diff changeset
   102
    [author:]
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
   103
        Claus Gittinger
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   104
"
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   105
! !
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   106
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   107
!InspectorView class methodsFor:'instance creation'!
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   108
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   109
for:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   110
    "create and launch a new inspector for anObject.
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   111
     This protocol is a historic leftover - this method will vanish."
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   112
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   113
    ^ self openOn:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   114
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   115
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   116
inspect:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   117
    "create and launch a new inspector for anObject.
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   118
     This protocol is a historic leftover - this method will vanish."
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   119
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   120
    ^ self openOn:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   121
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   122
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   123
openOn:anObject
571fd5eee315 Initial revision
claus
parents:
diff changeset
   124
    "create and launch a new inspector for anObject"
571fd5eee315 Initial revision
claus
parents:
diff changeset
   125
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   126
    ^ self openOn:anObject monitor:nil
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   127
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   128
    "
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   129
     InspectorView openOn:(5 @ 7)
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   130
     InspectorView openOn:(Array new:400)
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   131
     DictionaryInspectorView openOn:(IdentityDictionary new)
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   132
    "
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   133
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   134
    "Modified: 1.3.1996 / 19:31:03 / cg"
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   135
!
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   136
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   137
openOn:anObject monitor:anInstVarNameOrNil
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   138
    "create and launch a new inspector for anObject.
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   139
     If anInstVarNameOrNil is nonNil, let the inspector monitor it
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
   140
     (use an integer-printString as name, for indexed instVars)."
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   141
105
claus
parents: 100
diff changeset
   142
    |topView inspectorView|
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   143
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   144
    topView := StandardSystemView new.
9295
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   145
    topView
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   146
        icon:self defaultIcon;
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   147
        label:'Inspector';
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   148
        iconLabel:'Inspector';  
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   149
        extent:self defaultTopViewExtent;
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   150
        objectAttributeAt:#rememberExtent put:true.
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   151
571fd5eee315 Initial revision
claus
parents:
diff changeset
   152
    inspectorView := self origin:(0.0 @ 0.0)
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   153
                          corner:(1.0 @ 1.0)
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   154
                             in:topView.
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   155
3
claus
parents: 0
diff changeset
   156
    "kludge: must realize first, to be able to set menu again"
352
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
   157
    topView openAndWait.
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   158
    topView windowGroup 
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   159
        focusSequence:(Array 
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   160
                            with:inspectorView listView
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   161
                            with:inspectorView workspace).
9262
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   162
    inspectorView 
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   163
        allowFollow:true;
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   164
        isStandaloneInspector:true;
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   165
        inspect:anObject.
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   166
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   167
    anInstVarNameOrNil notNil ifTrue:[
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   168
        inspectorView monitor:anInstVarNameOrNil
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   169
    ].
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   170
69
0d6acfdae045 *** empty log message ***
claus
parents: 61
diff changeset
   171
    ^ inspectorView
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   172
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   173
    "
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   174
     |m|
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   175
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   176
     m := 1 asValue.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   177
     InspectorView openOn:m monitor:'value'.
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   178
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   179
     2 to:10 do:[:i |
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   180
         Delay waitForSeconds:1.
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   181
         m value:i
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   182
     ]
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   183
    "
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   184
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   185
    "
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   186
     |o|
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   187
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   188
     o := Array with:1 with:2 with:3.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   189
     InspectorView openOn:o monitor:'2'.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   190
     Delay waitForSeconds:1.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   191
     o at:2 put:20
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   192
    "
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   193
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   194
    "Created: / 01-03-1996 / 19:30:50 / cg"
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   195
    "Modified: / 23-10-2007 / 19:08:21 / cg"
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   196
!
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   197
13133
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   198
openOn:anObject title:aString
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   199
    "create and launch a new inspector for anObject"
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   200
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   201
    (self openOn:anObject monitor:nil) topView label:aString
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   202
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   203
    "
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   204
     InspectorView openOn:(5 @ 7) title:'my point'
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   205
    "
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   206
!
207c334d6f58 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13016
diff changeset
   207
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   208
openOn:anObject withEvalPane:withEvalPane
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   209
    ^ self openOn:anObject
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   210
!
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   211
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   212
openOn:anObject withEvalPane:withEvalPane withLabel:aLabel
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   213
    ^ self openOn:anObject
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   214
! !
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   215
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   216
!InspectorView class methodsFor:'common label support'!
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   217
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   218
commonLabelFor:anObject
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   219
    "return the windowLabel to use in my topView, when inspecting anObject.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   220
     Identical objects are labelled with the same id, which makes it easy to
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   221
     see if two objects are identical (and is very useful, indeed).
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   222
     WARNING: used by both Inspector and Inspector2 !!!!!!"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   223
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   224
    |lbl id extra|
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   225
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   226
    lbl := ''.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   227
    (anObject isImmediate
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   228
    or:[anObject isBoolean]) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   229
        lbl := '<%2> ' 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   230
    ].
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   231
    lbl := lbl , '%1%3'.
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   232
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   233
    IdDictionary isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   234
        IdDictionary := WeakIdentityDictionary new.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   235
    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   236
    [    
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   237
        id := IdDictionary 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   238
                    at:anObject 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   239
                    ifAbsentPut:[ 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   240
                        |nextID|
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   241
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   242
                        nextID := NextSequentialID ? 0.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   243
                        NextSequentialID := nextID + 1.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   244
                        nextID
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   245
                    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   246
    ] valueUninterruptably.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   247
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   248
    extra := ''.
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   249
    "/ the following should be provided by the inspected object (labelInInspector)
13701
025eeb45fcb6 class: InspectorView
Stefan Vogel <sv@exept.de>
parents: 13527
diff changeset
   250
    "/ Take care #isImage is also understood in MIMEType!!
025eeb45fcb6 class: InspectorView
Stefan Vogel <sv@exept.de>
parents: 13527
diff changeset
   251
    anObject isImageOrForm ifTrue:[
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   252
        anObject fileName notNil ifTrue:[
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   253
            extra := ' (', anObject fileName asFilename baseName,')'
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   254
        ]
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   255
    ].
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   256
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   257
    ^ self classResources 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   258
        string:lbl 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   259
        with:(self labelNameFor:anObject)
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   260
        with:id
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   261
        with:extra
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   262
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   263
    "Created: / 15-07-2011 / 16:21:44 / cg"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   264
!
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   265
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   266
labelNameFor:anObject
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   267
    "return the iconLabel to use in my topView, when inspecting anObject.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   268
     Simply returns the className or name of anObjects class"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   269
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   270
    |s|
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   271
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   272
    anObject isClass ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   273
        s := anObject displayString
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   274
    ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   275
        (anObject isImmediate
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   276
         or:[anObject isBoolean]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   277
            s := anObject printString , ', ' , anObject classNameWithArticle
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   278
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   279
            s := anObject classNameWithArticle
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   280
        ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   281
    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   282
    s isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   283
        anObject isBehavior ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   284
            ^ 'someBehavior'
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   285
        ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   286
        ^ 'something'
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   287
    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   288
    ^ s
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   289
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   290
    "Created: / 15-07-2011 / 16:20:06 / cg"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   291
! !
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   292
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   293
!InspectorView class methodsFor:'defaults'!
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   294
1873
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   295
defaultExtent
13768
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   296
    "return the default extent of my instances.
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   297
     The value returned here is usually ignored, and
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   298
     the value from preferredExtent taken instead."
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   299
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   300
     |display|
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   301
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   302
    display := Screen current.
956c2f91c5d9 Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13701
diff changeset
   303
    ^ (display monitorBoundsAt:display pointerPosition) extent // 3.
1873
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   304
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   305
    "Created: / 7.9.1998 / 13:47:45 / cg"
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   306
    "Modified: / 7.9.1998 / 14:15:38 / cg"
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   307
!
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   308
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   309
defaultIcon
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   310
    "return the browsers default window icon"
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   311
7835
ba364068a743 icon resource
Claus Gittinger <cg@exept.de>
parents: 7808
diff changeset
   312
    <resource: #programImage>
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   313
    <resource: #style (#INSPECTOR_ICON #INSPECTOR_ICON_FILE)>
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   314
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   315
    |nm i resources|
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   316
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   317
    (i := DefaultIcon) isNil ifTrue:[
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   318
        resources := self classResources.
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   319
        i := resources at:#INSPECTOR_ICON default:nil.
2338
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   320
        i isNil ifTrue:[
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   321
            nm := resources at:#INSPECTOR_ICON_FILE default:'Inspector.xbm'.
2475
12068d713365 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2454
diff changeset
   322
            i := Smalltalk imageFromFileNamed:nm forClass:self.
2338
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   323
            i isNil ifTrue:[
2454
114111038a2b try my bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
   324
                i := StandardSystemView defaultIcon
2338
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   325
            ]
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   326
        ].
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   327
        i notNil ifTrue:[
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   328
            DefaultIcon := i := i onDevice:Display
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   329
        ]
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   330
    ].
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   331
    ^ i
874
9ec421cec441 use Image instead of Form
Claus Gittinger <cg@exept.de>
parents: 871
diff changeset
   332
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   333
    "
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   334
       DefaultIcon := nil
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   335
    "
7835
ba364068a743 icon resource
Claus Gittinger <cg@exept.de>
parents: 7808
diff changeset
   336
ba364068a743 icon resource
Claus Gittinger <cg@exept.de>
parents: 7808
diff changeset
   337
    "Modified: / 17-09-2007 / 11:36:17 / cg"
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   338
!
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   339
11247
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   340
defaultIntegerDisplayRadix
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   341
    ^ DefaultIntegerDisplayRadix ? 10
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   342
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   343
    "Created: / 10-02-2012 / 19:51:38 / cg"
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   344
!
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   345
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   346
defaultTopViewExtent
9389
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   347
    |def|
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   348
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   349
    def := LastExtent ? self defaultExtent.
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   350
    ^ def min:(Screen current usableExtent)
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   351
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   352
    "Created: / 23-10-2007 / 19:04:13 / cg"
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   353
!
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   354
11230
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   355
expandArraysInAllLists
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   356
    "in the 'all instvars' list, expand arrays"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   357
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   358
    ^ ExpandArraysInAllLists ? false
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   359
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   360
    "Created: / 30-01-2012 / 16:52:57 / cg"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   361
!
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   362
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   363
expandArraysInAllLists:aBoolean
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   364
    "in the 'all instvars' list, expand arrays"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   365
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   366
    ExpandArraysInAllLists := aBoolean
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   367
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   368
    "Created: / 30-01-2012 / 16:53:01 / cg"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   369
!
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   370
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   371
rememberLastExtent:anExtent
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   372
    LastExtent := anExtent
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   373
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   374
    "Created: / 23-10-2007 / 19:10:02 / cg"
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   375
! !
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   376
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   377
!InspectorView class methodsFor:'image specs'!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   378
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   379
imageFor_arrays
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   380
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   381
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   382
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   383
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   384
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   385
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   386
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   387
     self imageFor_arrays inspect
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   388
     ImageEditor openOnClass:self andSelector:#imageFor_arrays
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   389
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   390
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   391
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   392
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   393
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   394
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   395
        constantNamed:'InspectorView class imageFor_arrays'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   396
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   397
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOTUAPBU@IS0@@@@@@@@AOTP%PBUAQ
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   398
T %O@@@@@@@@T0$IBP$ITUHIO0@@@@@@@EEPBU@ITUIRBSD@@@@@@@AQBP$IBP%RO0$1@@@@@@@@T5HIT %RO3DIO0@@@@@@@D=RT%HILSEJBR<@@@@@@@@@
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   399
S3D1LP%JBR<@@@@@@@@@@@AOO3D1O2<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 227 231 0 132 132 0 151 156 0 142 131 128 255 252 49 175 181 0 255 234 140 218 222 0 251 255 33 74 74 0 94 99 0 107 107 0 143 148 0 189 189 0 87 90 0 251 255 8 247 255 16 167 173 0 206 99 132 156 74 99 206 66 107 115 16 49 255 16 90 189 0 57 132 16 49 206 0 57 198 123 140 255 49 123 255 33 99 222 0 66 99 0 24 239 0 66 255 0 74 255 140 214 148 0 41 140 49 74 198 123 148 255 0 82 90 0 24 132 0 41 206 99 123 156 0 41 198 0 57 74 0 24 255 16 82 214 0 66 90 0 33 189 0 49 107 0 33 206 16 74 214 8 66 218 112 214 255 0 255 208 32 144 199 21 133 186 85 211]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   400
!
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   401
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   402
imageFor_characters
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   403
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   404
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   405
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   406
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   407
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   408
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   409
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   410
     self imageFor_characters inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   411
     ImageEditor openOnClass:self andSelector:#imageFor_characters
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   412
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   413
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   414
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   415
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   416
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   417
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   418
        constantNamed:'InspectorView class imageFor_characters'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   419
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   420
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTDIOC-FQ@@@@@@@@@A@MP$IBP$I
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   421
Q$U@@@@@@@@@L@%SOP%HRP$>M@@@@@@@@D4<BP$IS#MEP4H@@@@@@@AMNUP9BP$IP3)B@@@@@@@@L@$3R0%EP0%GLP@@@@@@@D@>BP$IBP%RQ2<@@@@@@@@@
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   422
K$1LBT]GQ3<@@@@@@@@@@@A@LTIBLR<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 227 231 0 132 132 0 151 156 0 142 131 128 255 252 49 175 181 0 255 234 140 218 222 0 251 255 33 74 74 0 94 99 0 107 107 0 143 148 0 189 189 0 87 90 0 251 255 8 247 255 16 167 173 0 206 99 132 156 74 99 206 66 107 115 16 49 255 16 90 189 0 57 132 16 49 206 0 57 198 123 140 255 49 123 255 33 99 222 0 66 99 0 24 239 0 66 255 0 74 255 140 214 148 0 41 140 49 74 198 123 148 255 0 82 90 0 24 132 0 41 206 99 123 156 0 41 198 0 57 74 0 24 255 16 82 214 0 66 90 0 33 189 0 49 107 0 33 206 16 74 214 8 66 173 0 49 115 0 33 181 0 49 74 0 16 255 8 82 231 0 66]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   423
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   424
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   425
imageFor_classes
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   426
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   427
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   428
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   429
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   430
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   431
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   432
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   433
     self imageFor_classes inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   434
     ImageEditor openOnClass:self andSelector:#imageFor_classes
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   435
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   436
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   437
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   438
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   439
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   440
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   441
        constantNamed:'InspectorView class imageFor_classes'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   442
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
11517
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   443
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MT 2M3\;
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   444
Q$U@@@@@@@@@LD!!HRD!!HRTX>M@@@@@@@@D4<RC\8S$%FP4H@@@@@@@AMNS$9MST3P3)B@@@@@@@@LCL3R4,3P4)GLP@@@@@@@D@>O#8>R$)JQ2<@@@@@@@@@
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   445
K$1LP$]GQ3<@@@@@@@@@@@A@LTIBLR<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 0 215 231 0 125 132 0 143 156 128 142 132 49 248 255 0 166 181 140 255 240 0 207 222 33 240 255 0 70 74 0 89 99 0 102 107 0 136 148 0 180 189 0 82 90 8 239 255 16 235 255 0 158 173 127 206 99 95 156 74 100 206 66 44 115 16 78 255 16 48 189 0 43 132 16 47 206 0 136 198 123 113 255 49 88 255 33 55 222 0 19 99 0 54 239 0 61 255 0 208 255 140 34 148 0 69 140 49 144 198 123 69 255 0 19 90 0 34 132 0 118 206 99 33 156 0 47 198 0 20 74 0 70 255 16 55 214 0 28 90 0 40 189 0 28 107 0 64 206 16 56 214 8]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   446
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   447
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   448
imageFor_collections
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   449
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   450
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   451
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   452
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   453
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   454
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   455
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   456
     self imageFor_collections inspect
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   457
     ImageEditor openOnClass:self andSelector:#imageFor_collections
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   458
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   459
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   460
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   461
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   462
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   463
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   464
        constantNamed:'InspectorView class imageFor_collections'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   465
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   466
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOBUAPTE@IS0@@@@@@@@AOBUAPTEAQ
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   467
T %O@@@@@@@@T0%PTEAPTUHIO0@@@@@@@EDITEAPTUIRBSD@@@@@@@AQBU@IT%DIO0$1@@@@@@@@T0%RT%IRO3DIO0@@@@@@@D<IT%IRLSEJBR<@@@@@@@@@
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   468
S0$1LSEJBR<@@@@@@@@@@@AOO3D1O2<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 227 231 0 132 132 0 151 156 0 142 131 128 255 252 49 175 181 0 255 234 140 218 222 0 251 255 33 74 74 0 94 99 0 107 107 0 143 148 0 189 189 0 87 90 0 251 255 8 247 255 16 167 173 0 206 99 132 156 74 99 206 66 107 115 16 49 255 16 90 189 0 57 132 16 49 206 0 57 198 123 140 255 49 123 255 33 99 222 0 66 99 0 24 239 0 66 255 0 74 255 140 214 148 0 41 140 49 74 198 123 148 255 0 82 90 0 24 132 0 41 206 99 123 156 0 41 198 0 57 74 0 24 255 16 82 214 0 66 90 0 33 189 0 49 107 0 33 206 16 74 214 8 66 218 112 214 255 0 255 208 32 144 199 21 133 186 85 211]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   469
!
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   470
11768
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   471
imageFor_colors
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   472
    "This resource specification was automatically generated
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   473
     by the ImageEditor of ST/X."
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   474
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   475
    "Do not manually edit this!! If it is corrupted,
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   476
     the ImageEditor may not be able to read the specification."
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   477
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   478
    "
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   479
     self imageFor_colors inspect
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   480
     ImageEditor openOnClass:self andSelector:#imageFor_colors
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   481
     Icon flushCachedIcons
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   482
    "
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   483
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   484
    <resource: #image>
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   485
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   486
    ^Icon
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   487
        constantNamed:'InspectorView imageFor_colors'
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   488
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   489
GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4@N#(:N @]GQ4]GQ4]GQ4@N#(:N#(*M!!4]GQ4]GQ4@@C(:N#(:
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   490
J"(6@A4]GQ4]@@@@N!!HRD"(*J#P]GQ4]GP@@@AHRD!!H2L#D1GQ4]GQ4@@@@RD!!HRLB4,KA4]GQ4]@@@@D!!HRH"T*J"(]GQ4]GP@@@@,IH"H"H"(]GQ4]GQ4]
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   491
@@@KDRH%H"\]GQ4]GQ4]GQ4@BP$ZH @]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GQ4]GP@a') ; colorMapFromArray:#[0 58 255 0 135 255 0 230 255 0 252 254 0 255 127 0 255 175 0 255 244 0 255 249 63 243 47 115 82 16 125 141 170 128 32 210 156 131 74 158 160 171 161 153 136 180 196 100 191 187 200 192 22 179 195 255 19 198 173 123 198 181 123 206 165 66 206 173 99 206 182 99 207 206 217 216 179 229 219 0 153 223 255 19 225 255 19 226 226 226 229 255 19 246 223 40 247 246 216 248 221 223 250 0 86 252 233 208 254 255 25 255 59 19 255 98 19 255 115 19 255 127 26 255 137 26 255 167 32 255 185 155 255 186 0 255 188 0 255 189 16 255 193 19 255 197 19 255 200 19 255 206 19 255 210 26 255 213 26 255 236 19 255 248 0 255 255 0 255 255 19 255 255 255 0 206 0]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@@<@G8@?0G? _>A?8G? O<@_ @<@@@@@@@@@b') ; yourself); yourself]
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   492
!
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   493
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   494
imageFor_dictionaries
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   495
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   496
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   497
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   498
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   499
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   500
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   501
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   502
     self imageFor_dictionaries inspect
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   503
     ImageEditor openOnClass:self andSelector:#imageFor_dictionaries
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   504
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   505
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   506
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   507
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   508
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   509
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   510
        constantNamed:'InspectorView class imageFor_dictionaries'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   511
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   512
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOTUAPTEARS0@@@@@@@@AOTU@HTE@I
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   513
BEIO@@@@@@@@T5APBP!!PTUIRO0@@@@@@@EDIBP$I@P$HO3D@@@@@@@AQTUDIBEIRO3D1@@@@@@@@T5IRBEIRBP!!JO0@@@@@@@D=RT%H?LSEJR"<@@@@@@@@@
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   514
S3D1LT(IBB<@@@@@@@@@@@AOO3D1O2<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 227 231 0 132 132 0 151 156 0 142 131 128 255 252 49 175 181 0 255 234 140 218 222 0 251 255 33 74 74 0 94 99 0 107 107 0 143 148 0 189 189 0 87 90 0 251 255 8 247 255 16 167 173 0 206 99 132 156 74 99 206 66 107 115 16 49 255 16 90 189 0 57 132 16 49 206 0 57 198 123 140 255 49 123 255 33 99 222 0 66 99 0 24 239 0 66 255 0 74 255 140 214 148 0 41 140 49 74 198 123 148 255 0 82 90 0 24 132 0 41 206 99 123 156 0 41 198 0 57 74 0 24 255 16 82 214 0 66 90 0 33 189 0 49 107 0 33 206 16 74 214 8 66 218 112 214 255 0 255 208 32 144 199 21 133 186 85 211]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   515
!
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   516
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   517
imageFor_false
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   518
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   519
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   520
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   521
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   522
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   523
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   524
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   525
     self imageFor_false inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   526
     ImageEditor openOnClass:self andSelector:#imageFor_false
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   527
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   528
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   529
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   530
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   531
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   532
    ^Icon
11548
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   533
        constantNamed:'InspectorView imageFor_false'
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   534
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
11548
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   535
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@ LC@ D@@@@@@@@@@@@DAPXFA0 IA@@@@@@@@@@JB0XLC@0L
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   536
CP8J@@@@@@@@@ XOCA@PDA@QD @@@@@@@@LGC00PD1PNEQX@@@@@@@@CE1 LC@0MEQ$V@@@@@@@@@!!PTCA@PDAXZF0@@@@@@@@(QC 0PGA$]F!!8@@@@@@@@@
13246
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   537
G10\GA(ZF"@@@@@@@@@@@@@JF1XVF18@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[0 0 0 200 120 145 208 64 109 208 16 96 208 96 128 208 0 87 248 0 103 248 0 88 240 0 85 200 0 68 200 120 146 208 0 72 250 255 248 184 192 189 160 0 52 248 8 100 135 144 128 144 0 60 128 16 63 208 8 83 184 0 77 128 0 53 88 0 37 216 0 75 224 0 78 96 0 25 64 0 27 120 16 59 120 0 50 64 0 12 160 72 102 208 96 143 136 32 60]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   538
!
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   539
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   540
imageFor_falseHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   541
    "This resource specification was automatically generated
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   542
     by the ImageEditor of ST/X."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   543
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   544
    "Do not manually edit this!! If it is corrupted,
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   545
     the ImageEditor may not be able to read the specification."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   546
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   547
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   548
     self imageFor_falseHolder inspect
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   549
     ImageEditor openOnClass:self andSelector:#imageFor_falseHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   550
     Icon flushCachedIcons
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   551
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   552
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   553
    <resource: #image>
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   554
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   555
    ^Icon
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   556
        constantNamed:'InspectorView imageFor_falseHolder'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   557
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   558
H"H"H @@@@@@@@@@H"H"H"H"H"H@@@@@@@@@@BH"H"H"H @@@@@@@@@@@@@@@BH"H"H@@@@A@ LC@ D@@@@"H"H"@@@DAPXFA0 IA@@@H"H"H @JB0XLC@0L
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   559
CP8J@BH"H"H@@ XOCA@PDA@QD @"H"H"@@LGC00PD1PNEQX@H"H"H @CE1 LC@0MEQ$V@BH"H"H@@!!PTCA@PDAXZF0@"H"H"@@(QC 0PGA$]F!!8@H"H"H @@
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   560
G10\GA(ZF"@@@BH"H"H@@@@JF1XVF18@@@@"H"H"@@@@@@@@@@@@@@@@H"H"H"H"@@@@@@@@@@@"H"H"H"H"H @@@@@@@@@@H"H"H @a') ; colorMapFromArray:#[0 0 0 200 120 145 208 64 109 208 16 96 208 96 128 208 0 87 248 0 103 248 0 88 240 0 85 200 0 68 200 120 146 208 0 72 250 255 248 184 192 189 160 0 52 248 8 100 135 144 128 144 0 60 128 16 63 208 8 83 184 0 77 128 0 53 88 0 37 216 0 75 224 0 78 96 0 25 64 0 27 120 16 59 120 0 50 64 0 12 160 72 102 208 96 143 136 32 60 226 226 226 60 59 55]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   561
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   562
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   563
imageFor_floats
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   564
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   565
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   566
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   567
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   568
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   569
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   570
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   571
     self imageFor_floats inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   572
     ImageEditor openOnClass:self andSelector:#imageFor_floats
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   573
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   574
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   575
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   576
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   577
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   578
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   579
        constantNamed:'InspectorView class imageFor_floats'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   580
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
11517
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   581
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MT 2BS\;
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   582
Q$U@@@@@@@@@LD!!HBP%HRTX>M@@@@@@@@D4<RC\IS#MFP4H@@@@@@@AMNS$9BSUCP3)B@@@@@@@@LCL3R0%EP4)GLP@@@@@@@D@>O $IBS8IQ2<@@@@@@@@@
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   583
K$1LP$]GQ3<@@@@@@@@@@@A@LTIBLR<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 0 231 4 0 132 0 0 156 5 139 142 128 52 255 49 0 181 6 161 255 140 0 222 4 33 255 37 0 74 0 0 99 5 0 107 0 0 148 5 0 189 0 0 90 3 8 255 12 16 255 24 0 173 6 206 173 99 156 131 74 206 165 66 115 82 16 255 181 16 189 132 0 132 99 16 206 149 0 198 181 123 255 181 49 255 189 33 222 156 0 99 75 0 239 173 0 255 181 0 255 181 140 148 107 0 140 115 49 198 173 123 255 173 0 90 66 0 132 91 0 206 182 99 156 115 0 198 141 0 74 50 0 255 189 16 214 148 0 90 57 0 189 140 0 107 74 0 206 148 16 214 156 8]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   584
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   585
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   586
imageFor_fractions
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   587
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   588
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   589
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   590
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   591
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   592
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   593
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   594
     self imageFor_fractions inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   595
     ImageEditor openOnClass:self andSelector:#imageFor_fractions
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   596
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   597
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   598
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   599
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   600
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   601
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   602
        constantNamed:'InspectorView class imageFor_fractions'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   603
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   604
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEABS-FQ@@@@@@@@@A@MSH2BP$7
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   605
LTY@@@@@@@@@LCH2L#HIS#D1M@@@@@@@@D4<OC0<BSL1LTH@@@@@@@AML3L3BP$ILSEB@@@@@@@@LCL3L0$3BT\1LP@@@@@@@D@>L3L3BT]GQ2<@@@@@@@@@
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   606
K$03BP$IQ3<@@@@@@@@@@@A@LTIBLR<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 0 231 4 0 132 0 0 156 5 139 142 128 52 255 49 0 181 6 161 255 140 0 222 4 33 255 37 0 74 0 0 99 5 0 107 0 0 148 5 0 189 0 0 90 3 8 255 12 16 255 24 0 173 6 206 173 99 156 131 74 206 165 66 115 82 16 255 181 16 189 132 0 132 99 16 206 149 0 198 181 123 255 181 49 255 189 33 222 156 0 99 75 0 239 173 0 255 181 0 255 181 140 148 107 0 140 115 49 198 173 123 255 173 0 90 66 0 132 91 0 206 182 99 156 115 0 198 141 0 74 50 0 255 189 16 214 148 0 90 57 0 189 140 0 107 74 0 206 148 16 214 156 8]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   607
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   608
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   609
imageFor_integers
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   610
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   611
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   612
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   613
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   614
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   615
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   616
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   617
     self imageFor_integers inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   618
     ImageEditor openOnClass:self andSelector:#imageFor_integers
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   619
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   620
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   621
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   622
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   623
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   624
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   625
        constantNamed:'InspectorView class imageFor_integers'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   626
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
11517
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   627
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MT 2BS\;
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   628
Q$U@@@@@@@@@LD!!HBP%HRTX>M@@@@@@@@D4<RC\IS#MFP4H@@@@@@@AMNS$9BSUCP3)B@@@@@@@@LCL3R0%EP4)GLP@@@@@@@D@>O $IBS9JQ2<@@@@@@@@@
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   629
K$1LP$]GQ3<@@@@@@@@@@@A@LTIBLR<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 0 231 4 0 132 0 0 156 5 139 142 128 52 255 49 0 181 6 161 255 140 0 222 4 33 255 37 0 74 0 0 99 5 0 107 0 0 148 5 0 189 0 0 90 3 8 255 12 16 255 24 0 173 6 206 173 99 156 131 74 206 165 66 115 82 16 255 181 16 189 132 0 132 99 16 206 149 0 198 181 123 255 181 49 255 189 33 222 156 0 99 75 0 239 173 0 255 181 0 255 181 140 148 107 0 140 115 49 198 173 123 255 173 0 90 66 0 132 91 0 206 182 99 156 115 0 198 141 0 74 50 0 255 189 16 214 148 0 90 57 0 189 140 0 107 74 0 206 148 16 214 156 8]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   630
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   631
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   632
imageFor_nil
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   633
    ^ self imageFor_nil2
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   634
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   635
    "Modified: / 21-11-2012 / 14:24:21 / cg"
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   636
!
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   637
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   638
imageFor_nil1
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   639
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   640
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   641
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   642
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   643
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   644
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   645
    "
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   646
     self imageFor_nil1 inspect
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   647
     ImageEditor openOnClass:self andSelector:#imageFor_nil1
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   648
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   649
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   650
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   651
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   652
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   653
    ^Icon
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   654
        constantNamed:'InspectorView imageFor_nil1'
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   655
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   656
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@KEP4MEP,@@@@@@@@@@@@GEA$YAP4OA0@@@@@@@@@JEA$WF!!HM
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   657
C1 J@@@@@@@@EQ$R@@ CEAXDDP@@@@@@@@4ED!!(ACQXXC@X@@@@@@@@ME@4TEAXXCALF@@@@@@@@EQXVE HXC@XNF@@@@@@@@@(DF@PLCALNC!!@@@@@@@@@@
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   658
A1LSA 8NC 4@@@@@@@@@@@@JF@XFFA@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   659
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   660
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   661
imageFor_nil2
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   662
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   663
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   664
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   665
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   666
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   667
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   668
    "
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   669
     self imageFor_nil2 inspect
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   670
     ImageEditor openOnClass:self andSelector:#imageFor_nil2
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   671
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   672
    "
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   673
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   674
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   675
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   676
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   677
        constantNamed:'InspectorView imageFor_nil2'
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   678
        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
13246
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   679
"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"G]7]8"H"H"GQDSLBH"H"GQL3L2P"H"H]L3L3FBH"H!!43L3LTH"H"GSL3L0 "H"H_L3L11BH"H!!<3L1:DH"H"H
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   680
B*,QDH"H"H"@@@@H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H b') ; colorMapFromArray:#[0 0 0 74 74 0 94 99 0 240 240 240 255 255 255 132 132 0 143 148 0 142 131 128 226 226 226 151 156 0 107 107 0 87 90 0 230 230 230]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   681
!
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   682
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   683
imageFor_nilHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   684
    "This resource specification was automatically generated
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   685
     by the ImageEditor of ST/X."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   686
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   687
    "Do not manually edit this!! If it is corrupted,
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   688
     the ImageEditor may not be able to read the specification."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   689
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   690
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   691
     self imageFor_nilHolder inspect
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   692
     ImageEditor openOnClass:self andSelector:#imageFor_nilHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   693
     Icon flushCachedIcons
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   694
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   695
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   696
    <resource: #image>
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   697
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   698
    ^Icon
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   699
        constantNamed:'InspectorView imageFor_nilHolder'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   700
        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   701
3L2H"H"H3L3L3H"H"H#L3L2H"H"H"H#L3H"G]7]8"L3L"GQDS]BH3L2GQM7]6P#L3H]M7]7VBL3L!!47]7]TH3L2GS]7]4 #L3H_]7]51BL3L!!=7]5:DH3L2H
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   702
B*,QDH#L3H"@@@@H"L3L"H"H"H"H3L3L"H"H"L3L3L2H"H"H3L0b') ; colorMapFromArray:#[0 0 0 74 74 0 94 99 0 240 240 240 255 255 255 132 132 0 143 148 0 142 131 128 226 226 226 151 156 0 107 107 0 87 90 0 60 59 55 230 230 230]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   703
!
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   704
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   705
imageFor_others
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   706
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   707
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   708
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   709
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   710
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   711
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   712
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   713
     self imageFor_others inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   714
     ImageEditor openOnClass:self andSelector:#imageFor_others
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   715
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   716
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   717
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   718
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   719
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   720
    ^Icon
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   721
        constantNamed:'InspectorView imageFor_others'
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   722
        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
13246
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   723
.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.5UUU[.;.;.5****B;.;.5*-;\) .;.;V-;\6VB;.;-Z;\*ZXK.;.5+Z*J$0.;.;V)**!!QB;.;-Z):]TDK.;.;
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   724
ADHQDK.;.;.0@@@K.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;,b') ; colorMapFromArray:#[0 0 0 76 74 0 88 90 0 96 100 0 108 108 0 144 132 130 152 156 0 168 174 0 176 182 0 188 190 0 220 222 0 228 226 230 228 232 0 240 240 240 255 252 50]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   725
!
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   726
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   727
imageFor_othersHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   728
    "This resource specification was automatically generated
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   729
     by the ImageEditor of ST/X."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   730
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   731
    "Do not manually edit this!! If it is corrupted,
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   732
     the ImageEditor may not be able to read the specification."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   733
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   734
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   735
     self imageFor_othersHolder inspect
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   736
     ImageEditor openOnClass:self andSelector:#imageFor_othersHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   737
     Icon flushCachedIcons
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   738
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   739
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   740
    <resource: #image>
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   741
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   742
    ^Icon
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   743
        constantNamed:'InspectorView imageFor_othersHolder'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   744
        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   745
&Y%&Y&Y&&Y&Y&VY&Y&ZY&Y%&Y&Y&Y&ZY&VY#L3L6Y)&YY#DQDQA&&Y%#DX:DGPZY&VLX:D!!]A)&YX1:DEQ4F&Y%#FAGAV0ZY&VLUDQ0?A)&YX1E1\2<F&Y%&
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   746
@"+?<FZY&VY @@@FY)&YY&Y&Y&Y&&Y&YY&Y&Y)&Y&Y%&Y&Y&&Y$b') ; colorMapFromArray:#[0 0 0 220 222 0 108 108 0 144 132 130 228 232 0 188 190 0 228 226 230 168 174 0 240 240 240 60 59 55 88 90 0 96 100 0 176 182 0 152 156 0 255 252 50 76 74 0]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   747
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   748
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   749
imageFor_sequenceableCollections
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   750
    "This resource specification was automatically generated
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   751
     by the ImageEditor of ST/X."
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   752
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   753
    "Do not manually edit this!! If it is corrupted,
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   754
     the ImageEditor may not be able to read the specification."
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   755
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   756
    "
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   757
     self imageFor_sequenceableCollections inspect
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   758
     ImageEditor openOnClass:self andSelector:#imageFor_sequenceableCollections
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   759
     Icon flushCachedIcons
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   760
    "
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   761
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   762
    <resource: #image>
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   763
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   764
    ^Icon
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   765
        constantNamed:'InspectorView class imageFor_sequenceableCollections'
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   766
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   767
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOTUAPTEARS0@@@@@@@@AOTUAPTE@I
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   768
BEIO@@@@@@@@T5APTEAPTUIRO0@@@@@@@EEPTEAPT $HO3D@@@@@@@AQTUERT%IRO3D1@@@@@@@@T5IRT%IRBP!!JO0@@@@@@@D=RT%H?LSEJR"<@@@@@@@@@
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   769
S3D1LT(IBB<@@@@@@@@@@@AOO3D1O2<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 227 231 0 132 132 0 151 156 0 142 131 128 255 252 49 175 181 0 255 234 140 218 222 0 251 255 33 74 74 0 94 99 0 107 107 0 143 148 0 189 189 0 87 90 0 251 255 8 247 255 16 167 173 0 206 99 132 156 74 99 206 66 107 115 16 49 255 16 90 189 0 57 132 16 49 206 0 57 198 123 140 255 49 123 255 33 99 222 0 66 99 0 24 239 0 66 255 0 74 255 140 214 148 0 41 140 49 74 198 123 148 255 0 82 90 0 24 132 0 41 206 99 123 156 0 41 198 0 57 74 0 24 255 16 82 214 0 66 90 0 33 189 0 49 107 0 33 206 16 74 214 8 66 218 112 214 255 0 255 208 32 144 199 21 133 186 85 211]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   770
!
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   771
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   772
imageFor_strings
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   773
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   774
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   775
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   776
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   777
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   778
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   779
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   780
     self imageFor_strings inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   781
     ImageEditor openOnClass:self andSelector:#imageFor_strings
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   782
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   783
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   784
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   785
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   786
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   787
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   788
        constantNamed:'InspectorView class imageFor_strings'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   789
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   790
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MTDIM5LI
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   791
BTU@@@@@@@@@LDDIM3]HBP$>M@@@@@@@@D4<BP$8S#LIP4H@@@@@@@AMNP$IMUDIP3)B@@@@@@@@LCL3R4=EP4)GLP@@@@@@@D@>QS9CTC)RQ2<@@@@@@@@@
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   792
K$1LP$]GQ3<@@@@@@@@@@@A@LTIBLR<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 227 231 0 132 132 0 151 156 0 142 131 128 255 252 49 175 181 0 255 234 140 218 222 0 251 255 33 74 74 0 94 99 0 107 107 0 143 148 0 189 189 0 87 90 0 251 255 8 247 255 16 167 173 0 206 99 132 156 74 99 206 66 107 115 16 49 255 16 90 189 0 57 132 16 49 206 0 57 198 123 140 255 49 123 255 33 99 222 0 66 99 0 24 239 0 66 255 0 74 255 140 214 148 0 41 140 49 74 198 123 148 255 0 82 90 0 24 132 0 41 206 99 123 156 0 41 198 0 57 74 0 24 255 16 82 214 0 66 90 0 33 189 0 49 107 0 33 206 16 74 214 8 66 173 0 49 115 0 33 181 0 49 74 0 16 255 8 82]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   793
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   794
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   795
imageFor_symbols
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   796
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   797
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   798
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   799
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   800
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   801
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   802
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   803
     self imageFor_symbols inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   804
     ImageEditor openOnClass:self andSelector:#imageFor_symbols
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   805
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   806
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   807
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   808
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   809
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   810
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   811
        constantNamed:'InspectorView class imageFor_symbols'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   812
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   813
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MTDIM5LI
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   814
Q$U@@@@@@@@@LDDIBP$IBP$>M@@@@@@@@D4<NP$8S $>P4H@@@@@@@AMNS$IMUDIP3)B@@@@@@@@LCLIBP$IBP%GLP@@@@@@@D@>QP%CT@%RQ2<@@@@@@@@@
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   815
K$1LP$]GQ3<@@@@@@@@@@@A@LTIBLR<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 0 0 0 227 231 0 132 132 0 151 156 0 142 131 128 255 252 49 175 181 0 255 234 140 218 222 0 251 255 33 74 74 0 94 99 0 107 107 0 143 148 0 189 189 0 87 90 0 251 255 8 247 255 16 167 173 0 206 99 132 156 74 99 206 66 107 115 16 49 255 16 90 189 0 57 132 16 49 206 0 57 198 123 140 255 49 123 255 33 99 222 0 66 99 0 24 239 0 66 255 0 74 255 140 214 148 0 41 140 49 74 198 123 148 255 0 82 90 0 24 132 0 41 206 99 123 156 0 41 198 0 57 74 0 24 255 16 82 214 0 66 90 0 33 189 0 49 107 0 33 206 16 74 214 8 66 173 0 49 115 0 33 181 0 49 74 0 16 255 8 82]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   816
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   817
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   818
imageFor_true
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   819
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   820
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   821
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   822
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   823
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   824
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   825
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   826
     self imageFor_true inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   827
     ImageEditor openOnClass:self andSelector:#imageFor_true
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   828
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   829
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   830
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   831
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   832
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   833
    ^Icon
11548
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   834
        constantNamed:'InspectorView imageFor_true'
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   835
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   836
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(MB@ MB @@@@@@@@@@@@:K#@0F2(\N @@@@@@@@@-H0$IBP$I
13246
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   837
A18-@@@@@@@@MC@$I@$$IBP9HP@@@@@@@B@[J20IIB0^K3 @@@@@@@@ MRT,BRP^K1<8@@@@@@@@MB0,I $$K2\"JP@@@@@@@B49G#$IIA<]H#H@@@@@@@@@
11548
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   838
M#L3NBH"H#\@@@@@@@@@@@@-JS 8JSH@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 98 255 0 75 198 0 25 74 0 57 156 0 34 99 0 92 206 16 60 132 16 31 74 0 79 206 0 128 131 142 88 231 0 70 189 0 38 90 0 148 198 123 57 115 16 92 239 0 103 255 8 76 189 0 154 198 123 85 214 0 53 132 0 106 255 0 138 255 49 107 156 74 44 115 0 119 206 66 85 222 0 142 206 99 68 139 33 33 90 0 57 148 0 135 206 99]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@@@@A>@O<A?8G? _>A?8G? _>@?0A>@@@@@@@@@b') ; yourself); yourself]
13246
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   839
!
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   840
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   841
imageFor_trueHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   842
    "This resource specification was automatically generated
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   843
     by the ImageEditor of ST/X."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   844
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   845
    "Do not manually edit this!! If it is corrupted,
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   846
     the ImageEditor may not be able to read the specification."
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   847
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   848
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   849
     self imageFor_trueHolder inspect
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   850
     ImageEditor openOnClass:self andSelector:#imageFor_trueHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   851
     Icon flushCachedIcons
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   852
    "
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   853
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   854
    <resource: #image>
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   855
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   856
    ^Icon
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   857
        constantNamed:'InspectorView imageFor_trueHolder'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   858
        ifAbsentPut:[(Depth8Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[8]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   859
N3,;N0@@@@@@@@@@N3,;N3,;N3,@@@@@@@@@@C,;N3,;N0@@@@@@@@@@@@@@@C,;N3,@@@@(MB@ MB @@@@;N3,;@@@:K#@0F2(\N @@N3,;N0@-H0$IBP$I
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   860
A18-@C,;N3,@MC@$I@$$IBP9HP@;N3,;@B@[J20IIB0^K3 @N3,;N0@ MRT,BRP^K1<8@C,;N3,@MB0,I $$K2\"JP@;N3,;@B49G#$IIA<]H#H@N3,;N0@@
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
   861
M#L3NBH"H#\@@C,;N3,@@@@-JS 8JSH@@@@;N3,;@@@@@@@@@@@@@@@@N3,;N3,;@@@@@@@@@@@;N3,;N3,;N0@@@@@@@@@@N3,;N0@a') ; colorMapFromArray:#[226 226 226 176 176 176 155 155 155 169 169 169 152 152 152 164 164 164 149 149 149 192 192 192 240 240 240 255 255 255 202 202 202 201 201 201 151 151 151 162 162 162 148 148 148 158 158 158 173 173 173 154 154 154 167 167 167 150 150 150 160 160 160 180 180 180 156 156 156 170 170 170 153 153 153 165 165 165 183 183 183 98 255 0 75 198 0 25 74 0 57 156 0 34 99 0 92 206 16 60 132 16 31 74 0 79 206 0 128 131 142 88 231 0 70 189 0 38 90 0 148 198 123 57 115 16 92 239 0 103 255 8 76 189 0 154 198 123 85 214 0 53 132 0 106 255 0 138 255 49 107 156 74 44 115 0 119 206 66 85 222 0 142 206 99 68 139 33 33 90 0 57 148 0 135 206 99 60 59 55]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'<@?0C<@C1>OO<=?;7?/_>=?;7?/_><?31>O@@?@O<@<b') ; yourself); yourself]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   862
! !
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   863
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   864
!InspectorView class methodsFor:'queries-plugin'!
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   865
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   866
aspectSelectors
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   867
    ^ #( inspectedObjectHolder )
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   868
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   869
    "Modified: / 10.2.2000 / 12:25:28 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   870
! !
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   871
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   872
!InspectorView methodsFor:'accessing'!
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   873
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   874
allowFollow:aBoolean
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   875
    "enable/disable the follow menu item;
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   876
     This is disabled for inspectors which are embedded in the debugger"
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   877
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   878
    allowFollow := aBoolean
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   879
!
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   880
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   881
dereferenceValueHolders:aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   882
    dereferenceValueHolders := aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   883
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   884
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   885
fieldListLabel:aString
12810
b7a6631ef77e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12784
diff changeset
   886
    labelView label:aString.
b7a6631ef77e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12784
diff changeset
   887
    labelView adjust:#left.
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   888
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   889
    "Created: 28.6.1996 / 15:30:26 / cg"
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   890
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   891
9630
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   892
headLineLabel:aString
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   893
    "an alternative headline label (if used as embedded inspector)"
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   894
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   895
    headLineLabel := aString.
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   896
9648
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   897
    labelView notNil ifTrue:[
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   898
        labelView label:headLineLabel.
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   899
    ].
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   900
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   901
    "Modified: / 25-11-2010 / 17:16:45 / cg"
9630
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   902
!
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   903
9693
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   904
headLineLabelView
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   905
    "provides access to the headline"
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   906
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   907
    ^ labelView
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   908
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   909
    "Created: / 21-01-2011 / 12:07:13 / cg"
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   910
!
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   911
12448
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   912
hideHashes:aBoolean
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   913
    "hide/show the hash-entries in the field list;
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   914
     This can be hidden for end-user applications"
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   915
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   916
    hideHashes := aBoolean
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   917
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   918
    "Created: 28.6.1996 / 15:08:32 / cg"
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   919
!
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   920
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   921
hideMessages:aBoolean
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   922
    "hide/show the messages-entries in the field list;
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   923
     This can be hidden for end-user applications"
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   924
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   925
    hideMessages := aBoolean
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   926
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   927
    "Created: 28.6.1996 / 15:08:32 / cg"
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   928
!
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
   929
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   930
hideReceiver:aBoolean
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   931
    "hide/show the self-entry for the inspected object;
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   932
     This is hidden for context inspectors in the debugger"
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   933
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   934
    hideReceiver := aBoolean
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   935
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   936
    "Created: 28.6.1996 / 15:08:32 / cg"
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   937
!
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   938
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   939
inspect:anObject
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   940
    "set/update the object to be inspected"
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   941
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   942
    |keepList fieldNameList sameObject sameClass oldSelectedField idx|
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   943
9690
5682d804727a changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9672
diff changeset
   944
    "/ (anObject isNil and:[object isNil]) ifTrue:[^ self].
9651
cca26b954d45 changed:
Claus Gittinger <cg@exept.de>
parents: 9648
diff changeset
   945
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   946
    sameObject := (anObject == object) and:[object notNil].
10520
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   947
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   948
    "/ JV@2011-08-06: Be carefull here, classes may be variable-lenght,
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   949
    "/ so instances of same class may have different number of slots!!
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   950
    "/ (caused problems expecially when stack inspector is shown in debugger).
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   951
    "/ To fix, I've added ------------------------v
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   952
    sameClass := (anObject class == object class) and:[anObject class isVariable not].
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   953
    selectionIndex notNil ifTrue:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   954
        oldSelectedField := (listView list ? #()) at:selectionIndex ifAbsent:nil.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   955
    ].
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   956
    inspectedObject := object := anObject.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   957
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   958
    keepList := ((sameObject | sameClass) and:[listView list notEmptyOrNil]).
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   959
    "/ assume that the list remains unchanged;
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   960
    "/ this is no longer true, if some inst-slot has changed (bullet colors)
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   961
    UserPreferences current showTypeIndicatorInInspector ifTrue:[
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   962
        keepList := false.
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   963
    ].
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   964
    keepList ifFalse:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   965
        hasMore := false.
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   966
        fieldNameList := self fieldList.                               
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   967
        hasMore ifTrue:[
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   968
            fieldNameList add:' ... '
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   969
        ].
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   970
        listView contents:fieldNameList.
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   971
        workspace contents:nil.
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   972
        self setDoItAction.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   973
    ].
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   974
    sameClass ifFalse:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   975
        selectionIndex := selectedLine := nil.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   976
    ].
9262
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   977
    isStandaloneInspector ifTrue:[
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   978
        "/ not embedded (as in the debugger)
2284
0f4ee9b43468 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   979
        self topView 
0f4ee9b43468 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   980
            label:(self labelFor:anObject);
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   981
            iconLabel:(self class labelNameFor:anObject).
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   982
    ].
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   983
        
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   984
    (sameObject | sameClass) ifFalse:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   985
        idx := (listView list ? #()) indexOf:oldSelectedField.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   986
        idx ~~ 0 ifTrue:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   987
            listView selection:idx
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   988
        ] ifFalse:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   989
            self setInitialSelection.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   990
        ]
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   991
    ].
10520
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   992
    self showSelection:((selectedLine ? 1) min: listView list size)
9624
defa4a2d2a10 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9615
diff changeset
   993
10520
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   994
    "Modified (comment): / 06-08-2011 / 13:41:50 / Jan Vrany <jan.vrany@fit.cvut.cz>"
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   995
    "Modified: / 02-06-2012 / 13:06:59 / cg"
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   996
!
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   997
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   998
isStandaloneInspector:aBoolean
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   999
    "obsolete now"
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1000
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
  1001
    isStandaloneInspector := aBoolean
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
  1002
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
  1003
    "Modified: / 12.2.1999 / 16:01:44 / cg"
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
  1004
!
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
  1005
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1006
label:aString
4106
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
  1007
    "set the fieldListLabel - obsolete; collides with inherited label-functionality"
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
  1008
5845
c7a4a4cd352b Mark obsolete methods
Stefan Vogel <sv@exept.de>
parents: 5698
diff changeset
  1009
    <resource:#obsolete>
4106
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
  1010
    self obsoleteMethodWarning:'use fieldListLabel:'.
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
  1011
    self fieldListLabel:aString.
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
  1012
    super label:aString.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1013
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1014
    "Created: 28.6.1996 / 15:30:26 / cg"
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1015
!
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1016
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1017
listView
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1018
    ^ listView
352
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
  1019
!
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
  1020
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1021
reinspect
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1022
    "update display for a changed inspectedObject"
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1023
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1024
    |aList|
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1025
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1026
    hasMore := false.
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1027
    aList := self fieldList.
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1028
    hasMore ifTrue:[
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1029
        aList add:' ... '
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1030
    ].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1031
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1032
    listView contents:aList.
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1033
    self setDoItAction.
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1034
    selectionIndex := selectedLine := nil
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
  1035
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
  1036
    "Modified (comment): / 02-06-2012 / 13:08:15 / cg"
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1037
!
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  1038
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1039
suppressHeadline:aBoolean
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1040
    "hide/show the title line above the list/value"
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1041
9736
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1042
    suppressHeadline := aBoolean.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1043
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1044
    labelView notNil ifTrue:[
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1045
        suppressHeadline == true ifTrue:[
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1046
            labelView beInvisible.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1047
            listView container topInset:0.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1048
            workspace container topInset:0.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1049
        ] ifFalse:[
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1050
            labelView beVisible.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1051
            listView container topInset:(labelView preferredHeight).
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1052
            workspace container topInset:(labelView preferredHeight).
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1053
        ].
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1054
    ].
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1055
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1056
    "Created: / 09-11-2010 / 14:50:04 / cg"
9736
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  1057
    "Modified: / 05-02-2011 / 14:03:55 / cg"
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1058
!
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1059
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  1060
suppressPseudoSlots:aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  1061
    suppressPseudoSlots := aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  1062
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  1063
352
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
  1064
workspace
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
  1065
    ^ workspace
52
7b48409ae088 *** empty log message ***
claus
parents: 49
diff changeset
  1066
! !
7b48409ae088 *** empty log message ***
claus
parents: 49
diff changeset
  1067
2724
ca96b304e992 category changes
Claus Gittinger <cg@exept.de>
parents: 2657
diff changeset
  1068
!InspectorView methodsFor:'accessing-channels'!
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1069
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1070
inspectedObjectHolder
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1071
    inspectedObjectHolder isNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1072
        inspectedObjectHolder := ValueHolder new.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1073
        inspectedObjectHolder addDependent:self.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1074
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1075
    ^ inspectedObjectHolder
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1076
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1077
    "Created: / 10.2.2000 / 13:33:16 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1078
    "Modified: / 10.2.2000 / 13:34:23 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1079
!
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1080
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1081
inspectedObjectHolder:aValueHolder
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1082
    inspectedObjectHolder notNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1083
        inspectedObjectHolder removeDependent:self.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1084
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1085
    inspectedObjectHolder := aValueHolder.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1086
    inspectedObjectHolder notNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1087
        inspectedObjectHolder addDependent:self.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1088
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1089
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1090
    "Created: / 10.2.2000 / 13:34:53 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1091
! !
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1092
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1093
!InspectorView methodsFor:'change & update'!
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1094
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1095
holderChanged:aValueHolder
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1096
    "a valueHolder of which I have registered an iterest
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1097
     has changed (see the menu item: 'Catch Change').
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1098
     Remove the interest (no further notifications) either by evaluating:
14070
f95472e8cb38 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13990
diff changeset
  1099
        aValueHolder retractInterestsFor:holderChangeInterest
f95472e8cb38 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13990
diff changeset
  1100
      or:
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1101
        self doUncatchChanges
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1102
     here, or via the field menu"
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1103
14070
f95472e8cb38 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13990
diff changeset
  1104
    "/ aValueHolder retractInterestsFor:holderChangeInterest
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1105
    self halt:'ValueHolder has changed - please proceed'.
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1106
!
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1107
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1108
update:something with:aParameter from:changedObject
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1109
    "Invoked when one of my dependees sends a change notification."
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1110
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1111
    |oldSelection|
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1112
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1113
    changedObject == object ifTrue:[
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1114
        oldSelection := listView selection.
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1115
        self inspect:object.
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1116
        oldSelection notNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1117
            self showSelection:oldSelection
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1118
        ]
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1119
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1120
12457
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  1121
    changedObject == inspectedObjectHolder ifTrue:[
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  1122
        self inspect:(inspectedObjectHolder value)
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1123
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1124
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1125
    super update:something with:aParameter from:changedObject
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1126
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1127
    "Created: / 10.2.2000 / 13:46:38 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1128
    "Modified: / 10.2.2000 / 13:48:18 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1129
! !
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
  1130
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1131
!InspectorView methodsFor:'drag & drop'!
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1132
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1133
getDisplayObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1134
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1135
    ^List with:self selection printString
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1136
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1137
    "Created: / 16-08-2005 / 21:54:52 / janfrog"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1138
    "Modified: / 18-09-2006 / 21:11:16 / cg"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1139
!
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1140
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1141
getDropObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1142
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1143
    ^List with:(DropObject new:self selection).
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1144
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1145
    "Created: / 16-08-2005 / 21:49:23 / janfrog"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1146
    "Modified: / 18-09-2006 / 21:11:31 / cg"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1147
! !
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1148
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1149
!InspectorView methodsFor:'event handling'!
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1150
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1151
doubleClickOnLine:lineNr
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1152
    |objectToInspect app|
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1153
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1154
    objectToInspect := self selectedField.
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1155
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1156
    "HACK"
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1157
    app := (self topView perform:#application ifNotUnderstood: [nil]).
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1158
    (app notNil and:[app isKindOf: Tools::Inspector2]) ifTrue:[
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1159
        app inspect: objectToInspect
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1160
    ] ifFalse:[
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1161
        objectToInspect inspect
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1162
    ]
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1163
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1164
    "Created: / 29-07-2011 / 21:09:43 / cg"
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1165
!
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1166
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1167
keyPress:key x:x y:y
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1168
    "handle special keys"
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1169
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1170
    <resource: #keyboard (#BrowseIt #InspectIt)>
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1171
12031
d36e19c23f23 changed: #keyPress:x:y:
Claus Gittinger <cg@exept.de>
parents: 11946
diff changeset
  1172
    self theSingleSelectionIndex "selection" notNil ifTrue:[
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1173
        (key == #BrowseIt) ifTrue:[
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1174
            self browse.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1175
            ^ self.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1176
        ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1177
        (key == #InspectIt) ifTrue:[
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1178
            self doInspect.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1179
            ^ self.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1180
        ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1181
    ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1182
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1183
    "all my other input is passed on to the workspace-field"
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1184
    x notNil ifTrue:[
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1185
        "/ not already delegated
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1186
        workspace keyPress:key x:-1 y:-1
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1187
    ].
9389
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1188
!
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1189
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1190
selectedField
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1191
    ^ self theSingleSelectionIndex isNil 
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1192
                            ifTrue:[object] 
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1193
                            ifFalse:[self selection].
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1194
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1195
    "Created: / 27-07-2012 / 22:42:23 / cg"
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1196
!
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1197
9389
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1198
sizeChanged:how
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1199
    super sizeChanged:how.
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1200
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1201
    isStandaloneInspector == true ifTrue:[
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1202
        LastExtent := self topView extent.
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1203
    ].
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1204
! !
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1205
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  1206
!InspectorView methodsFor:'initialization & release'!
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1207
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1208
destroy
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1209
    (self topView objectAttributeAt:#rememberExtent) == true ifTrue:[
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1210
        self class rememberLastExtent:(self topView extent).
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1211
    ].
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1212
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1213
    inspectedObject := object := nil.
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1214
    monitorProcess notNil ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1215
        monitorProcess terminate
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1216
    ].
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1217
    super destroy
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1218
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1219
    "Modified: / 23-10-2007 / 19:11:04 / cg"
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1220
!
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1221
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1222
initialize
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1223
    |v panel helpView labelView2|
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1224
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1225
    super initialize.
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1226
3318
46c3347385f4 preps to allow for displayString message to be configured
Claus Gittinger <cg@exept.de>
parents: 3199
diff changeset
  1227
    displayStringMessage := #displayString.
12448
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  1228
    hideReceiver := hideMessages := hideHashes := false.
10846
75970cbe22b1 class definition
Claus Gittinger <cg@exept.de>
parents: 10521
diff changeset
  1229
    integerDisplayRadix := (DefaultIntegerDisplayRadix ? 10).
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1230
    sortOrder := #instvarOrder.
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1231
    allowFollow := false.
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
  1232
    isStandaloneInspector := false.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1233
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1234
    panel := VariableHorizontalPanel 
1991
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1235
                origin:(0.0 @ 0.0)
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1236
                corner:(1.0 @ 1.0)
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1237
                in:self.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1238
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1239
    helpView := View origin:(0.0 @ 0.0) corner:(0.3 @ 1.0) in:panel.
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1240
    helpView level:0; borderWidth:0.
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1241
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1242
    suppressHeadline == true ifFalse:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1243
        labelView := Label origin:0.0@0.0 corner:1.0@0.0 in:helpView.
9630
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
  1244
        labelView label:(headLineLabel ? self defaultLabel).
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1245
        labelView bottomInset:(labelView preferredHeight negated).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1246
    ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1247
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1248
    v := HVScrollableView 
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1249
            for:SelectionInListView 
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1250
            miniScrollerH:true
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1251
            miniScrollerV:false
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1252
            in:helpView.
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1253
    v origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1254
    labelView notNil ifTrue:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1255
        v topInset:(labelView preferredHeight).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1256
    ].
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1257
1991
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1258
"/    v autoHideScrollBars:true.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1259
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1260
    listView := v scrolledView.
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  1261
    listView action:[:lineNr | self selection:lineNr.].
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1262
    listView doubleClickAction:[:lineNr | self doubleClickOnLine:lineNr].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1263
    listView ignoreReselect:false.
98
claus
parents: 93
diff changeset
  1264
    listView menuHolder:self; menuPerformer:self; menuMessage:#fieldMenu.
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1265
    self initializeDragAndDrop.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1266
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1267
    helpView := View origin:(0.3 @ 0.0) corner:(1.0 @ 1.0) in:panel.
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1268
    helpView level:0; borderWidth:0.
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1269
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1270
    suppressHeadline == true ifFalse:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1271
        labelView2 := Label origin:0.0@0.0 corner:1.0@0.0 in:helpView.
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1272
        labelView2 label:''.
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1273
        labelView2 bottomInset:(labelView preferredHeight negated).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1274
    ].
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1275
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1276
    v := HVScrollableView 
1991
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1277
                for:CodeView 
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1278
                miniScrollerH:true
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1279
                miniScrollerV:false
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1280
                in:helpView.
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1281
"/    v autoHideScrollBars:true.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1282
    v origin:(0.0 @ 0.0) corner:(1.0 @ 1.0).
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1283
    labelView2 notNil ifTrue:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1284
        v topInset:(labelView2 preferredHeight).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1285
    ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1286
    workspace := v scrolledView.
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1287
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  1288
    self setAcceptAction.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1289
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1290
    nShown := 100.
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1291
    hasMore := false.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1292
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1293
    "Modified: / 16-08-2005 / 21:54:04 / janfrog"
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1294
    "Modified: / 20-07-2012 / 10:48:34 / cg"
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1295
!
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1296
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1297
initializeDragAndDrop
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1298
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1299
    | source |
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1300
    source := DropSource 
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1301
                    receiver:self
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1302
                    argument:nil
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1303
                    dropObjectSelector:#getDropObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1304
                    displayObjectSelector:#getDisplayObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1305
                    dropFeedBackSelector:nil.
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1306
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1307
    listView dropSource:source.
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1308
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1309
    "Created: / 16-08-2005 / 21:51:43 / janfrog"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1310
    "Modified: / 18-09-2006 / 21:13:05 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1311
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1312
593
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1313
realize
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1314
    "delayed setup of lists till first map-time - 
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1315
     this makes startup of inspectors a bit faster"
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1316
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1317
    |o|
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1318
593
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1319
    super realize.
7887
be186ae12782 dont clobber the current selection on realize
Claus Gittinger <cg@exept.de>
parents: 7867
diff changeset
  1320
    "/ cg: I dont remember what this was needed for (is it still?)
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1321
    false "object notNil" ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1322
        "
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1323
         kludge to trick inspect:, which ignores setting the
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1324
         same object again ...
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1325
        "
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1326
        o := object.
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1327
        inspectedObject := object := nil.
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1328
        self inspect:o
383
e5760d864242 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 352
diff changeset
  1329
    ]
593
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1330
7887
be186ae12782 dont clobber the current selection on realize
Claus Gittinger <cg@exept.de>
parents: 7867
diff changeset
  1331
    "Created: / 30-05-1996 / 09:38:37 / cg"
be186ae12782 dont clobber the current selection on realize
Claus Gittinger <cg@exept.de>
parents: 7867
diff changeset
  1332
    "Modified: / 05-11-2007 / 20:11:44 / cg"
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1333
!
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1334
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1335
release
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1336
    "release inpected object. This is normally not needed,
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1337
     since the garbage collector will find this memory alone.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1338
     However, if some applications keeps invisible inspectors around
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1339
     (for example, the debugger does this), the inspected object
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1340
     would be kept from being freed or freed very late."
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1341
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1342
"
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1343
    inspectedObject notNil ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1344
        inspectedObject removeDependent:self
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1345
    ].
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1346
"
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1347
    inspectedObject := object := nil.
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1348
    self setDoItAction.      "/ to release ref to inspectedObject in doItBlock
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1349
    workspace contents:nil.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1350
    listView contents:nil.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1351
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1352
    super release.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1353
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1354
    "Modified: 11.6.1997 / 13:20:39 / cg"
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1355
!
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1356
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1357
setInitialSelection
14102
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  1358
    Error handle:[:ex |
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  1359
    ] do:[
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  1360
        object isLazyValue ifFalse:[
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  1361
            object isString ifTrue:[
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  1362
                self showSelection:1    "/ the self-line    
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  1363
            ]
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  1364
        ].
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1365
    ].
98
claus
parents: 93
diff changeset
  1366
! !
claus
parents: 93
diff changeset
  1367
claus
parents: 93
diff changeset
  1368
!InspectorView methodsFor:'menu'!
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1369
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1370
fieldMenu
1040
5835207bcb3e menu resource
Claus Gittinger <cg@exept.de>
parents: 901
diff changeset
  1371
    "return the menu for the field-list"
5835207bcb3e menu resource
Claus Gittinger <cg@exept.de>
parents: 901
diff changeset
  1372
1235
13610578a5d2 resource flag: #menu -> #programMenu
Claus Gittinger <cg@exept.de>
parents: 1185
diff changeset
  1373
    <resource: #programMenu>
1040
5835207bcb3e menu resource
Claus Gittinger <cg@exept.de>
parents: 901
diff changeset
  1374
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1375
    |items m sel|
1597
48629e1fc7b6 use new menu-creation message in PopUpMenu.
Claus Gittinger <cg@exept.de>
parents: 1570
diff changeset
  1376
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1377
    sel := self selection.
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1378
1597
48629e1fc7b6 use new menu-creation message in PopUpMenu.
Claus Gittinger <cg@exept.de>
parents: 1570
diff changeset
  1379
    items := #(
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1380
                       ('Copy Name or Key'             #doCopyKey              )
2085
ec4daf11d3b6 added #copyKey - menu item
Claus Gittinger <cg@exept.de>
parents: 2008
diff changeset
  1381
                       ('-')
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1382
                       ('Inspect'                      #doInspect              )
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1383
                       ('BasicInspect'                 #doBasicInspect         )
9349
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1384
             ).
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1385
    sel isValueModel ifTrue:[
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1386
        items := items , #(
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1387
                       ('Inspect Value'                #doInspectValue         )
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1388
             ).
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1389
    ].
9349
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1390
    NewInspector::NewInspectorView notNil ifTrue:[
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1391
        items := items , #(
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1392
                       ('Inspect Hierarchical'         #doNewInspect           )
9349
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1393
                ).
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1394
    ].
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1395
    items := items , #(
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1396
                       ('Browse'                       #browse                 )
8800
ab79a72dfdec changed: #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 8799
diff changeset
  1397
             ).
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1398
    sel isValueModel ifTrue:[
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1399
        items := items , #(
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1400
                       ('Browse Value'                 #browseValue            )
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1401
             ).
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1402
    ].
12934
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1403
    (sel isSymbol) ifTrue:[
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1404
        items := items , #(
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1405
                       ('Browse Implementors'           #browseImplementorsOfSymbolValue)
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1406
              ).
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1407
    ].
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1408
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1409
    items := items , (self optionalToolItems).
8800
ab79a72dfdec changed: #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 8799
diff changeset
  1410
    items := items , (self optionalViewSelectionItems).
ab79a72dfdec changed: #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 8799
diff changeset
  1411
    items := items , #(
7951
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1412
                       ('-') 
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1413
                       ('Owners'                       #showOwners             )  
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1414
                       ('Ref Chains'                   #showReferences         )
3199
5478ca0ac71f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3198
diff changeset
  1415
"/                       ('Browse class hierarchy'       #browseClassHierarchy   )
5478ca0ac71f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3198
diff changeset
  1416
"/                       ('Browse full class protocol'   #browseFullClassProtocol)
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1417
              ).
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  1418
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1419
    items := items , (self optionalMethodOrBlockSelectionItems).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1420
    items := items , (self optionalStreamSelectionItems).
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1421
    items := items , (self optionalFilenameSelectionItems).
9700
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1422
    items := items , (self optionalByteArraySelectionItems).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1423
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1424
    items := items , #(
2085
ec4daf11d3b6 added #copyKey - menu item
Claus Gittinger <cg@exept.de>
parents: 2008
diff changeset
  1425
                       ('-')
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1426
                       ('Local Protocol'               #localProtocolMenu      )
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1427
                       ('Full Protocol'                #protocolMenu           )
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1428
                       ('-')
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1429
                       ('Trap Message...'              #doTrap                 )
13185
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  1430
                       ('Trap Update Messages...'      #doTrapUpdates          )
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1431
                       ('Trap all Messages'            #doTrapAll              )
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1432
                       ('Trace all Messages'           #doTraceAll             )
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1433
                       ('Untrace/Untrap'               #doUntrace              )
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1434
"/                       ('-')
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1435
"/                       ('Trap change to instVar'       #doTrapInstVarChange    )
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1436
"/                       ('Trap change to any instVar'   #doTrapAnyInstVarChange )
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1437
              ).
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1438
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1439
    sel isValueModel ifTrue:[
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1440
        (holderChangeInterest notNil
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1441
        and:[ (sel interestsFor:holderChangeInterest) notEmptyOrNil ]) ifTrue:[
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1442
            items := items , #(
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1443
                       ('Uncatch Changes'             #doUncatchChanges           )
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1444
              ).
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1445
        ] ifFalse:[
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1446
            items := items , #(
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1447
                       ('Catch Changes'               #doCatchChanges             )
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1448
              ).
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1449
        ].
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1450
    ].
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1451
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1452
    allowFollow ifTrue:[
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1453
        items := #(
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1454
                            ('Follow'                       #doFollow              )
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1455
                            ('Back'                         #doBack              )
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1456
                            ('-')
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1457
                  )
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1458
                 ,
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1459
                 items.
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1460
    ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1461
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1462
    monitorProcess isNil ifTrue:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1463
        items := items , #(
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1464
                        ('Start Monitor'                #doStartMonitor         )
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1465
                          ).
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1466
    ] ifFalse:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1467
        items := items , #(
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1468
                        ('Stop Monitor'                #doStopMonitor           )
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1469
                          ).
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1470
    ].
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1471
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1472
    hasMore ifTrue:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1473
        items := items , #(
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1474
                        ('-')
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1475
                        ('Show More'                    #showMore               )
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1476
                          ).
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  1477
        (self numIndexedFields > (nShown * 2)) ifTrue:[
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1478
            items := items , #(
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1479
                        ('Show All'                     #showAll                )
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1480
                          )
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1481
        ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1482
    ].
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1483
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1484
    items := items , (self sortOrderItems).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1485
    items := items , (self numberBaseItems).
1634
216a4254e634 added 'hex integers' toggle to menu.
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  1486
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1487
    m := PopUpMenu
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1488
          itemList:items
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1489
          resources:resources.
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1490
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1491
    m subMenuAt:#protocolMenu put:(self protocolMenu).
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1492
    m subMenuAt:#localProtocolMenu put:(self localProtocolMenu).
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1493
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1494
    (self theSingleSelectionIndex isNil) ifTrue:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1495
        m disableAll:#(doFollow doInspect doBasicInspect doNewInspect
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1496
                       browse browseClassHierarchy browseFullClassProtocol
12934
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1497
                       browseValue browseImplementorsOfSymbolValue
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  1498
                       doStartMonitor doCopyKey doCopyKey)
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1499
    ].
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1500
    (self hasSelfEntry and:[selectionIndex == 1]) ifTrue:[
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1501
        m disableAll:#(doFollow doCopyKey "doInspect doBasicInspect")
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1502
    ].
7975
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1503
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1504
    inspectHistory size == 0 ifTrue:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1505
        m disable:#doBack
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1506
    ].
6491
d02c41c57d02 better menu
Claus Gittinger <cg@exept.de>
parents: 6372
diff changeset
  1507
    sel class hasImmediateInstances ifTrue:[
2580
d0c284a14c9c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2579
diff changeset
  1508
        m disableAll:#(showReferences doNewInspect)
d0c284a14c9c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2579
diff changeset
  1509
    ].
8616
51d6f6c57f14 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8452
diff changeset
  1510
"/    sel inspectorClass == self class ifFalse:[
51d6f6c57f14 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8452
diff changeset
  1511
"/        m disable:#doFollow
51d6f6c57f14 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8452
diff changeset
  1512
"/    ].
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1513
    sel isMethod ifFalse:[
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1514
        m disable:#browseMethodsClass
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1515
    ].
3199
5478ca0ac71f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3198
diff changeset
  1516
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1517
    sel := nil. "/ release ref to sel; helps reference finder
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1518
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1519
    ^ m
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1520
13185
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  1521
    "Modified: / 16-07-2013 / 19:56:54 / cg"
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1522
!
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1523
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1524
localProtocolMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1525
    "return the menu for the inspected object's local implemented messages"
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1526
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1527
    |localSelectors labels localProtocolMenu|
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1528
12886
7b0e8db1cf42 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12849
diff changeset
  1529
    localSelectors := object class methodDictionary keysSorted.
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1530
    "/ kludge: '-' and '=' are special in a menu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1531
    labels := localSelectors collect:[:sel | (#('-' '=') includes:sel) ifTrue:[' ',sel] ifFalse:[sel]].
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1532
    localProtocolMenu := PopUpMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1533
                        labels:labels
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1534
                        selector:#letSelectedObjectPerform: 
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1535
                        args:localSelectors
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1536
                        receiver:self.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1537
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1538
    ^ localProtocolMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1539
!
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1540
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1541
numberBaseItems
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1542
    ^ {
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1543
        #('-') .
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1544
        (integerDisplayRadix == 10) 
12643
60880a007cb0 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12642
diff changeset
  1545
            ifFalse:[ #('Show Integers as Decimal'  #setDisplayRadixTo10  ) ] .
13527
b49478620933 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13258
diff changeset
  1546
        (integerDisplayRadix == 16) 
b49478620933 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13258
diff changeset
  1547
            ifFalse:[ #('Show Integers as Hex'  #setDisplayRadixTo16      ) ] .
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1548
        (integerDisplayRadix == 2) 
12643
60880a007cb0 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12642
diff changeset
  1549
            ifFalse:[ #('Show Integers as Binary'  #setDisplayRadixTo2    ) ] .
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1550
      } select:[:el | el notNil].
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1551
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1552
    "Modified: / 24-08-2010 / 17:31:51 / cg"
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1553
!
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1554
9700
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1555
optionalByteArraySelectionItems
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1556
"/    |sel|
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1557
"/
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1558
"/    sel := self selection.
9700
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1559
    (object isByteArray) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1560
        ^ #(
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1561
               ('Save Bytes to File...'             #saveBytesToFile)
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1562
          ).
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1563
    ].
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1564
    ^ #()
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1565
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1566
    "Created: / 25-01-2011 / 17:16:12 / cg"
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1567
!
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1568
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1569
optionalFilenameSelectionItems
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1570
    |sel|
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1571
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1572
    sel := self selection.
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1573
    (object isFilename or:[sel isFilename]) ifTrue:[
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1574
        OperatingSystem isMSWINDOWSlike ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1575
            ^ #(
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1576
                       ('Show in Explorer'             #showInWindowsExplorer)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1577
                       ('Open FileBrowser'             #openFileBrowser)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1578
              ).
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1579
        ].
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1580
        ^ #(
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1581
               ('Open FileBrowser'             #openFileBrowser)
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1582
          ).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1583
    ].
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1584
    ^ #()
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1585
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1586
    "Created: / 09-02-2007 / 16:10:30 / cg"
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1587
    "Modified: / 05-02-2011 / 15:49:48 / cg"
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1588
!
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1589
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1590
optionalMethodOrBlockSelectionItems
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1591
    |sel items|
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1592
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1593
    sel := self selection.
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1594
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1595
    items := #().
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1596
    (sel isBlock or:[sel isContext]) ifTrue:[
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1597
        items := items , #(
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1598
                       ('Browse Block''s Home'           #browseHome)
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1599
              ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1600
    ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1601
    (object isMethod or:[sel isMethod]) ifTrue:[
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1602
        items := items , #(
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1603
                       ('Browse Method''s Class'         #browseMethodsClass)
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1604
                 ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1605
    ].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1606
    (selectionIndex notNil 
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1607
    and:[(self fieldList at:selectionIndex ifAbsent:nil) = '-dependents']) ifTrue:[
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1608
        items := items , #(
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1609
                       ('Browse Update Methods'        #browseUpdateMethods)
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1610
                 ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1611
    ].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1612
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1613
    ^ items
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1614
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1615
    "Modified: / 03-08-2011 / 15:03:36 / cg"
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1616
!
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1617
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1618
optionalStreamSelectionItems
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1619
    |sel|
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1620
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1621
    sel := self selection.
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1622
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1623
    sel isStream ifTrue:[
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1624
        sel isFileStream ifTrue:[
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1625
            OperatingSystem isMSWINDOWSlike ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1626
                ^ #(
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1627
                       ('Show in Explorer'             #showInWindowsExplorer)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1628
                       ('Open FileBrowser'             #openFileBrowser)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1629
                  ).
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1630
            ].
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1631
            ^ #(
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1632
                       ('Open FileBrowser'             #openFileBrowser)
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1633
              ).
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1634
        ].
9384
30eafebfd3f5 code deobfuscated:
Claus Gittinger <cg@exept.de>
parents: 9378
diff changeset
  1635
        sel isExternalStream ifFalse:[
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1636
            ^ #(
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1637
                       ('Show Stream Contents'         #showStreamContents)
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1638
              ).
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1639
        ].
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1640
    ].
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1641
    ^ #()
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1642
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1643
    "Created: / 09-02-2007 / 16:09:15 / cg"
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1644
    "Modified: / 05-02-2011 / 15:49:55 / cg"
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1645
!
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1646
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1647
optionalToolItems
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1648
    "inserted after inspect/browse"
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1649
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1650
    ^ #()
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1651
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1652
    "Created: / 27-01-2011 / 11:51:12 / cg"
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1653
!
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1654
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1655
optionalViewSelectionItems
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1656
    |sel|
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1657
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1658
    sel := self selection.
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1659
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1660
    sel isView ifTrue:[
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1661
        ^ #(
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1662
            ('Show Widget Hierarchy'             #openWidgetHierarchy)
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1663
          ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1664
    ].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1665
    ^ #()
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1666
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1667
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1668
protocolMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1669
    "return the menu for the inspected object's implemented messages"
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1670
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1671
    |protocols protocolsSorted selectorsByFirstCharacter protocolMenu|
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1672
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1673
    protocols := Dictionary new.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1674
    selectorsByFirstCharacter := Dictionary new.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1675
    object class withAllSuperclassesDo:[:eachClass |
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1676
        eachClass methodDictionary keysAndValuesDo:[:sel :m |
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1677
            sel numArgs == 0 ifTrue:[
13870
f879d86b381f merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13768
diff changeset
  1678
                (protocols at:(m category ?'') ifAbsentPut:[Set new]) add:sel.
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1679
                (selectorsByFirstCharacter at:(sel first asString) ifAbsentPut:[Set new]) add:sel.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1680
            ]
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1681
        ].
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1682
    ].
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1683
12886
7b0e8db1cf42 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12849
diff changeset
  1684
    protocolsSorted := protocols keysSorted.
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1685
    protocolMenu := PopUpMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1686
                        labels:#('alphabetical' '=') , protocolsSorted
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1687
                        selectors:#(nil nil) , protocolsSorted.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1688
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1689
    protocolMenu 
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1690
        subMenuAt:'alphabetical'
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1691
        put:[
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1692
            |firstChars alphaMenu|
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1693
12886
7b0e8db1cf42 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12849
diff changeset
  1694
            firstChars := selectorsByFirstCharacter keysSorted.
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1695
            alphaMenu := PopUpMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1696
                               labels:firstChars
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1697
                               selector:#mmm 
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1698
                               args:firstChars
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1699
                               receiver:self.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1700
            firstChars do:[:ch |
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1701
                alphaMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1702
                    subMenuAt:ch
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1703
                    put:[
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1704
                        |selectors sortedSelectors|
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1705
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1706
                        selectors := selectorsByFirstCharacter at:ch.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1707
                        sortedSelectors := selectors asArray sort.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1708
                        PopUpMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1709
                            labels:sortedSelectors
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1710
                            selector:#letSelectedObjectPerform: 
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1711
                            args:sortedSelectors
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1712
                            receiver:self.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1713
                    ]
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1714
            ].
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1715
            alphaMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1716
        ].
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1717
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1718
    protocolsSorted do:[:p |
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1719
        protocolMenu 
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1720
            subMenuAt:p 
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1721
            put:[
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1722
                |selectors sortedSelectors|
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1723
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1724
                selectors := protocols at:p.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1725
                sortedSelectors := selectors asArray sort.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1726
                PopUpMenu
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1727
                    labels:sortedSelectors
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1728
                    selector:#letSelectedObjectPerform: 
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1729
                    args:sortedSelectors
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1730
                    receiver:self.
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1731
            ]
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1732
    ].
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1733
    ^  protocolMenu
13870
f879d86b381f merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13768
diff changeset
  1734
f879d86b381f merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13768
diff changeset
  1735
    "Modified: / 15-10-2013 / 12:38:49 / Jan Vrany <jan.vrany@fit.cvut.cz>"
12597
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1736
!
cce7b1ccaa6d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12528
diff changeset
  1737
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1738
sortOrderItems
11634
06cd46b8e285 changed: #sortOrderItems
Claus Gittinger <cg@exept.de>
parents: 11629
diff changeset
  1739
    object class instSize == 0 ifTrue:[ ^ #() ].
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1740
    ^ {
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1741
        #('-') .
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1742
        (sortOrder == #instvarOrder) 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1743
            ifFalse:[ #('Instvar Order'  #setSortOrderToInstvarOrder  ) ] .
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1744
        (sortOrder == #alphabetical) 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1745
            ifFalse:[ #('Alphabetical'  #setSortOrderToAlphabetical  ) ] .
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1746
      } select:[:el | el notNil].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1747
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1748
    "Created: / 20-07-2012 / 10:47:53 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1749
! !
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1750
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1751
!InspectorView methodsFor:'menu actions'!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1752
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1753
browse
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1754
    self doBrowse:self selectedField 
527
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1755
!
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1756
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1757
browseClass
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1758
    |cls|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1759
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1760
    cls := self selectedField class.
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1761
    cls browserClass 
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1762
        openInClass:cls selector:nil
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1763
        "/ browseClass:cls
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1764
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1765
    "Modified: / 27-07-2012 / 22:42:39 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1766
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1767
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1768
browseClassHierarchy
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1769
    |cls|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1770
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1771
    cls := self selectedField class.
527
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1772
    cls browserClass browseClassHierarchy:cls
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1773
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1774
    "Modified: / 27-07-2012 / 22:42:47 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1775
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1776
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1777
browseFullClassProtocol
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1778
    |cls|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1779
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1780
    cls := self selectedField class.
527
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1781
    cls browserClass browseFullClassProtocol:cls
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1782
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1783
    "Modified: / 27-07-2012 / 22:42:50 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1784
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1785
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1786
browseHome
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1787
    |sel mthd|
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1788
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1789
    sel := self selectedField.
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1790
    sel isBlock ifTrue:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1791
        mthd := sel homeMethod
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1792
    ] ifFalse:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1793
        sel isContext ifTrue:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1794
            mthd := sel method.
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1795
        ]
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1796
    ].
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1797
    mthd isNil ifTrue:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1798
        ^ self warn:'Sorry - cannot figure out home method.'
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1799
    ].
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1800
    mthd class browserClass 
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1801
        openInClass:mthd mclass selector:mthd selector
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1802
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1803
    "Modified: / 27-07-2012 / 22:42:55 / cg"
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1804
!
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1805
12934
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1806
browseImplementorsOfSymbolValue
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1807
    |symbol|
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1808
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1809
    symbol := self selection.
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1810
    inspectedObject class  browserClass 
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1811
        browseImplementorsOf:symbol
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1812
!
2dc6af821d0d class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12916
diff changeset
  1813
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1814
browseMethodsClass
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1815
    |mthd|
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1816
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1817
    mthd := self selection.
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1818
    mthd mclass browserClass 
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1819
        openInClass:mthd mclass selector:mthd selector
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1820
!
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1821
7975
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1822
browseUpdateMethods
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1823
    |deps methods|
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1824
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1825
    deps := self selection.
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1826
    methods := Set new.
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1827
    deps do:[:each | 
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1828
        |implClass|
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1829
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  1830
        implClass := each class whichClassIncludesSelector:#'update:with:from:'.
7975
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1831
        implClass notNil ifTrue:[
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1832
            methods add:(implClass compiledMethodAt:#'update:with:from:')
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1833
        ]
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1834
    ].
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1835
    methods isEmpty ifTrue:[^ self].
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1836
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1837
    methods first mclass browserClass 
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1838
        browseMethods:methods
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1839
        title:'Update Method(s) of dependent(s)'
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1840
!
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1841
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1842
browseValue
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1843
    self doBrowse:self selectedField value
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1844
!
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1845
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1846
doBack
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1847
    "user selected back-menu entry"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1848
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1849
    |objectToInspect|
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1850
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1851
    inspectHistory size > 0 ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1852
        objectToInspect := inspectHistory removeLast.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1853
        inspectHistory size == 0 ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1854
            inspectHistory := nil
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1855
        ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1856
        self inspect:objectToInspect.
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1857
    ]
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1858
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1859
    "Created: / 22.9.1998 / 18:22:01 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1860
    "Modified: / 22.9.1998 / 18:22:28 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1861
!
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1862
1930
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1863
doBasicInspect
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1864
    "user selected inspect-menu entry"
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1865
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1866
    self doInspect:self selectedField basic:true
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1867
!
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1868
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1869
doBrowse:what
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1870
    |cls|
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1871
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1872
    cls := what class.
13016
7c3c7b67607b class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12945
diff changeset
  1873
    (cls browserClass ? UserPreferences systemBrowserClass) 
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1874
        openInClass:cls selector:nil
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1875
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1876
    "Created: / 14-12-1995 / 19:15:50 / cg"
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1877
    "Modified: / 27-07-2012 / 22:42:44 / cg"
1930
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1878
!
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1879
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1880
doCatchChanges
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1881
    |sel|
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1882
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1883
    holderChangeInterest isNil ifTrue:[
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1884
        "/ remember the interest, in order to be able to retract later
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1885
        holderChangeInterest := [ self holderChanged:sel ]
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1886
    ].
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1887
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1888
    sel := self selection.
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1889
    sel onChangeSend:#value to:holderChangeInterest.
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1890
!
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  1891
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1892
doFollow
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1893
    "user selected follow-menu entry"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1894
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1895
    |objectToInspect|
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1896
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1897
    selectionIndex notNil ifTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1898
        objectToInspect := self selection.
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1899
        inspectHistory isNil ifTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1900
            inspectHistory := OrderedCollection new
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1901
        ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1902
        inspectHistory addLast:object.
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1903
        self inspect:objectToInspect.
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1904
    ]
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1905
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1906
    "Created: / 22.9.1998 / 18:21:08 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1907
    "Modified: / 22.9.1998 / 18:22:23 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1908
!
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1909
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1910
doInspect
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1911
    "user selected inspect menu entry"
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1912
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1913
    self doInspect:self selectedField basic:false
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1914
!
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1915
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1916
doInspectValue
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1917
    "user selected inspect-value menu entry"
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1918
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  1919
    self doInspect:self selectedField value basic:false
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1920
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1921
1365
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1922
doNewInspect
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1923
    self doInspect:#new
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1924
!
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1925
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1926
doStartMonitor
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1927
    "start a monitoring process"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1928
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1929
    monitorProcess isNil ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1930
        monitorProcess :=
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1931
            [
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1932
                |sel|
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  1933
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1934
                [true] whileTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1935
                    (sel := selectionIndex) notNil ifTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1936
                        self showSelection:sel 
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1937
                    ].
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1938
                    (Delay forSeconds:0.5) wait
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1939
                ]
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1940
            ] forkAt:Processor userBackgroundPriority
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1941
    ]
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1942
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1943
    "Modified: 12.4.1996 / 14:20:06 / cg"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1944
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1945
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1946
doStopMonitor
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1947
    "stop the monitor"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1948
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1949
    monitorProcess terminate.
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1950
    monitorProcess := nil
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1951
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1952
2800
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  1953
doTraceAll
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1954
    "place a trace on all messages sent to the inspected object"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1955
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1956
    self topView withWaitCursorDo:[MessageTracer traceAll:object on:Transcript]
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1957
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1958
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1959
doTrap
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1960
    "place a trap on a message sent to the inspected object"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1961
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1962
    |string selector|
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1963
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1964
    string := Dialog request:'Selector to trap on:' onCancel:nil.
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1965
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1966
    string notNil ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1967
        selector := string asSymbolIfInterned.
901
56fe927e0734 fix doTrap
ca
parents: 874
diff changeset
  1968
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1969
        selector isNil ifTrue:[
11893
ae42ce342190 changed:
Claus Gittinger <cg@exept.de>
parents: 11858
diff changeset
  1970
            self warn:'No such selector'
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1971
        ] ifFalse:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1972
            self topView withWaitCursorDo:[MessageTracer trap:object 
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1973
                                                         selector:selector]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1974
        ]
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1975
    ]
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1976
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1977
    "Modified: 12.4.1996 / 14:07:01 / cg"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1978
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1979
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1980
doTrapAll
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1981
    "place a trap on all messages sent to the inspected object"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1982
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1983
    self topView withWaitCursorDo:[MessageTracer trapAll:object]
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1984
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1985
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1986
doTrapAnyInstVarChange
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1987
    "place a trap which is triggered if any instVar of the inspected object is changed"
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1988
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1989
    self topView withWaitCursorDo:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1990
        MessageTracer trapModificationsIn:object
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1991
    ]
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1992
!
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1993
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1994
doTrapInstVarChange
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1995
    "place a trap which is triggered if the selected instVar of the inspected object is changed"
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1996
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1997
    self topView withWaitCursorDo:[
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1998
        |idx|
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1999
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2000
        "/ a named instVar ?
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2001
        idx := self instVarIndexForLine:selectionIndex.
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2002
        idx isNil ifTrue:[
11893
ae42ce342190 changed:
Claus Gittinger <cg@exept.de>
parents: 11858
diff changeset
  2003
            self warn:'Select an instance variable first.'.
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2004
            ^ self.
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2005
        ].
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2006
        MessageTracer 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2007
                trapModificationsOf:(object class allInstVarNames at:idx)
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2008
                in:object
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2009
    ]
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2010
!
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  2011
13185
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2012
doTrapUpdates
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2013
    "place a trap on all update and XXXChanged messages sent to the inspected object"
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2014
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2015
    |selectors|
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2016
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2017
    selectors := IdentitySet new.
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2018
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2019
    "/ find all dependencies which lead to a message to this object
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2020
    "/ (also look for onChangeSend: and onChangeEvaluate: dependencies)
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2021
    InterestConverter allInstances do:[:i |
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2022
        |dest mthd messages|
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2023
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2024
        dest := i destination.
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2025
        (dest == object) ifTrue:[
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2026
            selectors add:(i selector)
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2027
        ] ifFalse:[
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2028
            (dest isBlock 
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2029
            and:[ (dest methodHome receiver == object)
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2030
            and:[ (mthd := dest methodHome method) notNil ]]) ifTrue:[   
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2031
                "/ vague
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2032
                messages := mthd messagesSent.
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2033
                messages := messages select:[:sel | object class implements:sel].
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2034
                selectors addAll:messages.
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2035
            ].
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2036
        ]
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2037
    ].
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2038
    #(update:
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2039
      update:with:
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2040
      update:with:from:)
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2041
    do:[:each |
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2042
        (object class implements:each) ifTrue:[
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2043
            selectors add:each.
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2044
        ]
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2045
    ].
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2046
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2047
    InterestConverter allInstances 
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2048
        select:[:i | i destination isMessage
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2049
                     and:[i class == MessageSend
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2050
                     and:[i selector == #value
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2051
                     and:[i receiver == object ]]]]
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2052
        thenDo:[:i | selectors add:(i selector)].
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2053
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2054
    (Dialog 
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2055
        confirm:('About to place an instance trap on the following selectors:\\' withCRs
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2056
                    , (selectors asOrderedCollection sort asStringWith:'\' withCRs)))
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2057
        ifFalse:[ ^ self].
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2058
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2059
    self topView withWaitCursorDo:[MessageTracer trap:object 
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2060
                                                 selectors:selectors]
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2061
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2062
    "Created: / 16-07-2013 / 19:56:08 / cg"
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2063
!
a682a29bb651 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13133
diff changeset
  2064
12467
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2065
doUncatchChanges
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2066
    |sel|
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2067
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2068
    holderChangeInterest notNil ifTrue:[
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2069
        sel := self selection.
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2070
        sel retractInterestsFor:holderChangeInterest
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2071
    ].
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2072
!
49d6f47ed3f4 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12457
diff changeset
  2073
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2074
doUntrace
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2075
    "remove traps/traces"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2076
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2077
    MessageTracer untrace:object
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2078
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2079
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2080
inspectOwners
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2081
    "open an inspector on owners of the inspectedObject.
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2082
     (this is a secret function)"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2083
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2084
    self withCursor:(Cursor questionMark) do:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2085
        |owners dict|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2086
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2087
        owners := (ObjectMemory whoReferences:object) asOrderedCollection.
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2088
        owners size > 500 ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2089
            (self confirm:'there are ' , owners size printString , ' owners.\\Do you really want to see them all ?' withCRs)
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2090
            ifFalse:[^ self]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2091
        ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2092
        dict := IdentityDictionary new.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2093
        owners do:[:owner |
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2094
            |set names oClass|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2095
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2096
            owner ~~ self ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2097
                set := Set new.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2098
                names := owner class allInstVarNames.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2099
                oClass := owner class.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2100
                1 to:oClass instSize do:[:i |
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2101
                    (owner instVarAt:i) == object ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2102
                        set add:(names at:i).
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2103
                    ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2104
                ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2105
                oClass isVariable ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2106
                    oClass isPointers ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2107
                        1 to:owner basicSize do:[:i |
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2108
                            (owner basicAt:i) == object ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2109
                                 set add:i
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2110
                            ]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2111
                        ]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2112
                    ]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2113
                ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2114
                dict at:owner put:set
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2115
            ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2116
        ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2117
        dict inspect
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  2118
    ]
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2119
!
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2120
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2121
letSelectedObjectPerform:aSelector
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2122
    |sel argString|
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2123
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  2124
    sel := self selectedField.
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2125
    aSelector numArgs == 0 ifTrue:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2126
        (sel perform:aSelector) inspect.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2127
        ^ self.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2128
    ].
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2129
    aSelector numArgs == 1 ifTrue:[
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2130
        argString := Dialog request:'Argument (Smalltalk Object)'.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2131
        argString isEmptyOrNil ifTrue:[^ self].
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2132
        (sel perform:aSelector with:(Object readFrom:argString)) inspect.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2133
        ^ self.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2134
    ].
12945
2824a84004ee class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12934
diff changeset
  2135
self halt:'unimplemented numargs'.
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  2136
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  2137
    "Modified: / 27-07-2012 / 22:43:37 / cg"
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2138
!
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  2139
6283
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  2140
openFileBrowser
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  2141
    |fn|
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  2142
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  2143
    fn := self selection.
9615
6fc22155a4f6 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9574
diff changeset
  2144
    fn isNil ifTrue:[ fn := inspectedObject ].
8155
018dcb4973bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8090
diff changeset
  2145
    fn isStream ifTrue:[
018dcb4973bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8090
diff changeset
  2146
        fn := fn pathName asFilename
018dcb4973bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8090
diff changeset
  2147
    ].
9794
6aa5341140a7 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9737
diff changeset
  2148
    (UserPreferences current fileBrowserClass) openOnFileNamed:fn asFilename.
6aa5341140a7 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9737
diff changeset
  2149
6aa5341140a7 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9737
diff changeset
  2150
    "Modified: / 22-03-2011 / 18:05:22 / cg"
6283
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  2151
!
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  2152
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2153
openWidgetHierarchy
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2154
    |view|
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2155
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2156
    view := self selection.
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2157
    view isView ifFalse:[^ self].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2158
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2159
    WindowTreeView openOn:view
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2160
!
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  2161
9700
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2162
saveBytesToFile
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2163
    |fn|
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2164
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2165
    fn := Dialog requestFileName:'Save bytes into:'.
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2166
    fn isEmptyOrNil ifTrue:[^ self].
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2167
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2168
    fn asFilename contents:inspectedObject.
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2169
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2170
    "Modified: / 25-01-2011 / 17:23:38 / cg"
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2171
!
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  2172
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2173
setDisplayRadixTo10
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2174
    self setDisplayRadixTo:10
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2175
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2176
    "Created: / 24-08-2010 / 17:26:12 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2177
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2178
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2179
setDisplayRadixTo16
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2180
    self setDisplayRadixTo:16
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2181
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2182
    "Created: / 24-08-2010 / 17:26:22 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2183
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2184
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2185
setDisplayRadixTo2
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2186
    self setDisplayRadixTo:2
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2187
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2188
    "Created: / 24-08-2010 / 17:26:18 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2189
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2190
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2191
setDisplayRadixTo:radix
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2192
    |sel|
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2193
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2194
    integerDisplayRadix := DefaultIntegerDisplayRadix := radix.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2195
    self reinspect.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2196
    sel := listView selection.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2197
    sel notNil ifTrue:[
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2198
        self showSelection:sel
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2199
    ]
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2200
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2201
    "Created: / 24-08-2010 / 17:26:54 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2202
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2203
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2204
setSortOrderTo:aSymbol
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2205
    sortOrder := aSymbol.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2206
    self reinspect.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2207
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2208
    "Created: / 20-07-2012 / 10:59:30 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2209
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2210
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2211
setSortOrderToAlphabetical
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2212
    self setSortOrderTo:#alphabetical
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2213
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2214
    "Created: / 20-07-2012 / 10:59:52 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2215
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2216
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2217
setSortOrderToInstvarOrder
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2218
    self setSortOrderTo:#instvarOrder
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2219
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2220
    "Created: / 20-07-2012 / 10:59:59 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2221
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2222
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2223
showAll
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2224
    |o|
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2225
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2226
    hasMore ifTrue:[
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2227
        nShown := self numIndexedFields.
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2228
        "/ force update (which is otherwise ignored)
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2229
        o := object.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2230
        inspectedObject := object := nil.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2231
        self inspect:o
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2232
    ]
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2233
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2234
    "Created: / 13-06-2012 / 09:27:45 / cg"
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2235
!
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2236
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2237
showInWindowsExplorer
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2238
    "show in explorer"
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2239
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2240
    |fn dir|
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2241
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2242
    fn := self selection.
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2243
    fn isNil ifTrue:[ fn := inspectedObject ].
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2244
    fn isStream ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2245
        fn := fn pathName asFilename
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2246
    ].
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2247
    dir := fn isDirectory
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2248
            ifTrue:[ fn ]
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2249
            ifFalse:[ fn directory ].
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2250
11641
17b6078ca84a changed: #showInWindowsExplorer
Claus Gittinger <cg@exept.de>
parents: 11634
diff changeset
  2251
    dir asFilename openExplorer
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2252
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2253
    "Created: / 05-02-2011 / 15:49:33 / cg"
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2254
!
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  2255
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2256
showMore
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2257
    |o|
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2258
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2259
    hasMore ifTrue:[
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2260
        nShown := nShown * 2.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2261
        "/ force update (which is otherwise ignored)
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2262
        o := object.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2263
        inspectedObject := object := nil.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2264
        self inspect:o
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2265
    ]
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2266
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2267
    "Modified: / 26.8.1998 / 19:05:25 / cg"
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2268
!
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  2269
7951
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2270
showOwners
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2271
    |o|
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2272
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2273
    o := self selection.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2274
    self withCursor:(Cursor questionMark) do:[
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2275
        |owners dict|
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2276
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2277
        owners := (ObjectMemory whoReferences:o).
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2278
        owners isEmptyOrNil ifTrue:[
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2279
            self information:'No owners found.'.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2280
            ^ self
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2281
        ].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2282
        owners := owners asOrderedCollection.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2283
        "
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2284
         skip weakArrays ... (they dont count)
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2285
        "
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2286
        owners := owners reject:[:owner | owner isMemberOf:WeakArray].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2287
        owners inspect.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2288
"/        inspector := DictionaryInspectorView openOn:dict.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2289
"/        inspector listView doubleClickAction:[:lineNr | inspector doInspectKey].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2290
    ]
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2291
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2292
    "Modified: 15.10.1996 / 22:09:38 / cg"
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2293
!
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2294
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2295
showReferences
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2296
    "user selected references-menu entry"
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2297
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2298
    self selection class hasImmediateInstances ifTrue:[
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2299
        ^ self warn:'Sorry - cannot show references to immediate objects'
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2300
    ].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2301
    ObjectMemory displayRefChainTo:(self selection)
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2302
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2303
    "Modified: / 30.7.1998 / 14:03:16 / cg"
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2304
!
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2305
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2306
showStreamContents
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2307
    |sel|
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2308
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2309
    sel := self selection.
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2310
    (sel isStream and:[sel isExternalStream not]) ifTrue:[
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2311
        workspace replace:(sel contents printString)
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2312
    ].
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2313
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2314
    "Created: / 6.2.2000 / 13:46:37 / cg"
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2315
    "Modified: / 6.2.2000 / 13:47:37 / cg"
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  2316
! !
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  2317
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2318
!InspectorView methodsFor:'presentation'!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2319
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2320
appendDisplayStringForElementsOf:val indent:lvl pad:padding to:aStream
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2321
    val doWithIndex:[:el :idx |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2322
        |elValString|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2323
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2324
        aStream spaces:lvl.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2325
        aStream nextPutAll:(' ' paddedTo:padding with:$.).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2326
        aStream nextPutAll:(' [',(idx printString leftPaddedTo:2),']').
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2327
        aStream nextPutAll:' : '.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2328
        elValString := self basicDisplayStringForValue:el.                
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2329
        aStream nextPutAll:elValString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2330
        aStream cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2331
        "/ s nextPutAll:(self stringWithAllInstVarValuesFor:el level:lvl+4)
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2332
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2333
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2334
    "Created: / 12-02-2012 / 09:55:53 / cg"
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2335
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2336
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2337
basicDisplayStringForValue:someValue 
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2338
    "return the value's displayString to be pasted into the workspace."
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2339
12496
0c1a828b524e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12467
diff changeset
  2340
    |s maxStringLength|
0c1a828b524e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12467
diff changeset
  2341
0c1a828b524e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12467
diff changeset
  2342
    maxStringLength := 100000.
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2343
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2344
    Error handle:[:ex |
12688
f497f6254988 use #creator instead of #signal
Claus Gittinger <cg@exept.de>
parents: 12643
diff changeset
  2345
        (ex creator == WriteError and:[s isStream]) ifTrue:[
12496
0c1a828b524e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12467
diff changeset
  2346
            "hit the write limit"
12103
00db0ef29541 class: InspectorView
Stefan Vogel <sv@exept.de>
parents: 12090
diff changeset
  2347
            s writeLimit:nil.
00db0ef29541 class: InspectorView
Stefan Vogel <sv@exept.de>
parents: 12090
diff changeset
  2348
            s nextPutAll:' ...'.
00db0ef29541 class: InspectorView
Stefan Vogel <sv@exept.de>
parents: 12090
diff changeset
  2349
            ^ s contents.
00db0ef29541 class: InspectorView
Stefan Vogel <sv@exept.de>
parents: 12090
diff changeset
  2350
        ].
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2351
        s := someValue classNameWithArticle.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2352
        displayStringMessage == #displayString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2353
            s := s , ' "error in displayString: ' , ex description , '"'
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2354
        ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2355
            s := s , ' "error in displayString (' , displayStringMessage , '): ' , ex description , '"'
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2356
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2357
        ^ s
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2358
    ] do:[
12090
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2359
        [
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2360
            integerDisplayRadix ~= 10 ifTrue:[
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2361
                "/ not everything can be shown in HEX/Binary
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2362
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2363
                someValue isInteger ifTrue:[
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2364
                    (someValue < integerDisplayRadix) ifTrue:[  
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2365
                        ^ someValue printString.
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2366
                    ].
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2367
                    s := someValue radixPrintStringRadix:integerDisplayRadix.
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2368
                    s := s , ' "',(someValue printString),'"'.
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2369
                    ^ s
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2370
                ].
12090
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2371
                (someValue isMemberOf:ByteArray) ifTrue:[
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2372
                    s := WriteStream on:(String new:10).
12496
0c1a828b524e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12467
diff changeset
  2373
                    s writeLimit:maxStringLength.
12090
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2374
                    someValue printOn:s base:integerDisplayRadix showRadix:true.
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2375
                    ^ s contents
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2376
                ]
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2377
            ].
12090
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2378
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2379
            "/ displayStringMessage := #classNameWithArticle
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2380
            "/ displayStringMessage := #displayString
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2381
            "/ displayStringMessage := #printString
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2382
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2383
            someValue isLazyValue ifTrue:[
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2384
                ^ someValue class nameWithArticle    
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2385
            ].
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2386
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2387
            s := CharacterWriteStream on:(String new:10).
12496
0c1a828b524e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12467
diff changeset
  2388
            s writeLimit:maxStringLength.
12090
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2389
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2390
            "/ mhmh - avoid sending #perform: (bad for proxy objects which pass it to somewhere..)
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2391
            displayStringMessage == #displayString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2392
                someValue displayOn:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2393
                "/ s := someValue displayString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2394
            ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2395
                displayStringMessage == #printString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2396
                    someValue printOn:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2397
                    "/ s := someValue printString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2398
                ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2399
                    displayStringMessage == #storeString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2400
                        someValue storeOn:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2401
                        "/ s := someValue storeString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2402
                    ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2403
                        ^ someValue perform:displayStringMessage.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2404
                    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2405
                ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2406
            ].
12090
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2407
            ^ s contents
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2408
        ] valueWithWatchDog:[^ someValue class nameWithArticle]
4d6995f57149 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12076
diff changeset
  2409
          afterMilliseconds:1000
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2410
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2411
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2412
    "Modified: / 20-07-2012 / 10:54:05 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2413
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2414
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2415
displayStringForValue:someValue
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2416
    "return the value's displayString to be pasted into the workspace."
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2417
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2418
    |idx sel extraAttributes|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2419
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2420
    idx := self theSingleSelectionIndex.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2421
    idx notNil ifTrue:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2422
        sel := self listEntryAt:idx.
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2423
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2424
        extraAttributes := object inspectorExtraAttributes.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2425
        (extraAttributes notNil and:[extraAttributes includesKey:sel]) ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2426
            ^ someValue "(extraAttributes at:sel) value" printString
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2427
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2428
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2429
        (sel startsWith:'-all inst vars') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2430
            ^ self stringWithAllInstVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2431
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2432
        (sel startsWith:'-all indexed vars') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2433
            ^ self stringWithAllIndexedVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2434
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2435
        (sel startsWith:'-all messages') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2436
            ^ self stringWithMessages:#all
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2437
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2438
        (sel startsWith:'-local messages') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2439
            ^ self stringWithMessages:#local
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2440
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2441
        (sel startsWith:'-inherited messages') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2442
            ^ self stringWithMessages:#inherited
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2443
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2444
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2445
    ^ self basicDisplayStringForValue:someValue
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2446
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2447
    "Modified: / 16-05-2012 / 17:55:05 / cg"
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2448
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2449
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2450
iconForValue: anObject
13246
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2451
    |value|
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2452
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2453
    anObject isNil ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2454
        ^ self class imageFor_nil
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2455
    ].
11835
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2456
    anObject isLazyValue ifTrue:[
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2457
        ^ self class imageFor_others
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2458
    ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2459
    anObject isNumber ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2460
        anObject isInteger ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2461
            ^ self class imageFor_integers
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2462
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2463
        anObject isFloat ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2464
            ^ self class imageFor_floats
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2465
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2466
        anObject isFraction ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2467
            ^ self class imageFor_fractions
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2468
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2469
    ].
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2470
    anObject isCollection ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2471
        anObject isString ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2472
            anObject isSymbol ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2473
                ^ self class imageFor_symbols
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2474
            ].
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2475
            ^ self class imageFor_strings
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2476
        ].
12820
a3b0b7557632 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12810
diff changeset
  2477
        (anObject isDictionary) ifTrue:[
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2478
            ^ self class imageFor_dictionaries
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2479
        ].
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2480
        (anObject isArray) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2481
            ^ self class imageFor_arrays
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2482
        ].
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
  2483
        (anObject isSequenceable) ifTrue:[
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
  2484
            ^ self class imageFor_sequenceableCollections
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
  2485
        ].
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2486
        ^ self class imageFor_collections
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2487
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2488
    anObject == true ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2489
        ^ self class imageFor_true
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2490
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2491
    anObject == false ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2492
        ^ self class imageFor_false
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2493
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2494
    anObject isCharacter ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2495
        ^ self class imageFor_characters
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2496
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2497
    anObject isBehavior ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2498
        ^ self class imageFor_classes
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2499
    ].
11768
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
  2500
    anObject isColor ifTrue:[
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
  2501
        ^ self class imageFor_colors
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
  2502
    ].
13246
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2503
    anObject isValueModel ifTrue:[
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2504
        Error handle:[:ex |
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2505
        ] do:[
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2506
            value := anObject value.
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2507
            value == true ifTrue:[^ self class imageFor_trueHolder].
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2508
            value == false ifTrue:[^ self class imageFor_falseHolder].
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2509
            value == nil ifTrue:[^ self class imageFor_nilHolder].
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2510
            ^ self class imageFor_othersHolder
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2511
        ].
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2512
    ].
82b532a7c4c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13185
diff changeset
  2513
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2514
    ^ self class imageFor_others
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2515
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2516
    "Created: / 16-05-2012 / 17:58:20 / cg"
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2517
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2518
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2519
listEntryForName:nameString value:value
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2520
    |entryString|
11517
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2521
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2522
    UserPreferences current showTypeIndicatorInInspector ifFalse:[
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2523
        ^ nameString
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2524
    ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2525
11749
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2526
    Error handle:[:ex |
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2527
        ^ nameString
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2528
    ] do:[
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2529
        entryString := nameString allBold,(self valueStringInListEntryForValue:value).
11835
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2530
        (value isLazyValue not and:[value isColor and:[value red notNil]]) ifTrue:[
11749
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2531
            entryString := entryString
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2532
                         , '  ' , ('   '
12076
e19be49ded36 class: Color
Stefan Vogel <sv@exept.de>
parents: 12063
diff changeset
  2533
                            colorizeAllWith:(value contrastingBlackOrWhite)
11749
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2534
                            on:value).
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2535
        ].
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2536
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2537
        ^ LabelAndIcon string:entryString image:(self iconForValue:value)
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
  2538
    ].
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
  2539
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2540
    "Created: / 16-05-2012 / 18:42:28 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2541
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2542
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2543
plainValueStringInListEntryForValue:value
13990
0cf6a3bea278 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13870
diff changeset
  2544
    "returns nil or a string to show in angle brackets.
0cf6a3bea278 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13870
diff changeset
  2545
     This is the string shown in the name list on the left"
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2546
11587
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2547
    |s|
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2548
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2549
    UserPreferences current showTypeIndicatorInInspector ifFalse:[^ nil].
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2550
11587
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2551
    value class == ValueHolder ifTrue:[
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2552
        s := self plainValueStringInListEntryForValue:value value.
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2553
        s notNil ifTrue:[
12784
81727a87cad8 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12753
diff changeset
  2554
            ^ '{' , s , '}'
11587
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2555
        ].
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2556
        ^ nil
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2557
    ].
11835
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2558
    value isLazyValue ifTrue:[
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2559
        "do not block on not yet finished Futures et al"
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2560
        ^ '>>Lazy value<<'
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2561
    ].
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2562
    (value isNumber or:[value isBoolean]) ifTrue:[
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2563
        ^ self basicDisplayStringForValue:value "value printString"
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2564
    ].
11810
320b379eaedb changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11808
diff changeset
  2565
    ^ value inspectorValueStringInListFor:self
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2566
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2567
    "Created: / 13-06-2012 / 12:50:26 / cg"
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2568
!
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2569
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2570
stringWithAllIndexedVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2571
    |nIdx s names maxLen varString padLeft|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2572
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2573
    nIdx := object size.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2574
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2575
    s := CharacterWriteStream on:''.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2576
    names := self indexList.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2577
    names size > 0 ifTrue:[
12642
6dab05146bff class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12611
diff changeset
  2578
        maxLen := names inject:0 into:[:maxSoFar :eachName | (eachName printString size) max:maxSoFar]. 
6dab05146bff class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12611
diff changeset
  2579
        padLeft := names conform:[:eachIdx | eachIdx isInteger].  
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2580
        
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2581
        names do:[:eachIdx |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2582
            |val|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2583
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2584
            padLeft ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2585
                s nextPutAll:(eachIdx printStringLeftPaddedTo:maxLen).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2586
            ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2587
                s nextPutAll:((eachIdx printString , ' ') paddedTo:maxLen+1 with:$.).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2588
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2589
            s nextPutAll:' : '.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2590
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2591
            val := self indexedValueAtKey:eachIdx.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2592
11251
00baec48d015 changed:
Claus Gittinger <cg@exept.de>
parents: 11250
diff changeset
  2593
            ((ExpandArraysInAllLists == true) and:[val isSequenceable and:[ val class isPointers]]) ifTrue:[
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2594
                s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2595
                self appendDisplayStringForElementsOf:val indent:2 pad:maxLen+1+1 to:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2596
            ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2597
                varString := self basicDisplayStringForValue:val.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2598
                (varString includes:Character cr) ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2599
                    varString := varString copyTo:(varString indexOf:Character cr)-1.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2600
                    varString := varString , '...'.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2601
                ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2602
                s nextPutLine:varString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2603
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2604
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2605
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2606
    nShown < nIdx ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2607
        s nextPutLine:' ...'.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2608
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2609
    ^ s contents
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2610
11251
00baec48d015 changed:
Claus Gittinger <cg@exept.de>
parents: 11250
diff changeset
  2611
    "Modified: / 12-02-2012 / 10:52:04 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2612
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2613
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2614
stringWithAllInstVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2615
    ^ self stringWithAllInstVarValuesFor:object level:0
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2616
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2617
    "Modified: / 31-01-2012 / 18:23:11 / cg"
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2618
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2619
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2620
stringWithAllInstVarValuesFor:anObject level:lvl
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2621
    |s names maxLen|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2622
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2623
    s := CharacterWriteStream on:''.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2624
    names := anObject class allInstVarNames.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2625
    maxLen := (names collect:[:eachName | eachName size]) max.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2626
    names keysAndValuesDo:[:eachInstVarIndex :eachInstVarName |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2627
        |val valString|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2628
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2629
        val := anObject instVarAt:eachInstVarIndex.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2630
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2631
        s spaces:lvl.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2632
        s nextPutAll:((eachInstVarName , ' ') paddedTo:maxLen+1 with:$.).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2633
        s nextPutAll:' : '.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2634
11251
00baec48d015 changed:
Claus Gittinger <cg@exept.de>
parents: 11250
diff changeset
  2635
        ((ExpandArraysInAllLists == true) and:[val isSequenceable and:[ val class isPointers] ]) ifTrue:[
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2636
            s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2637
            self appendDisplayStringForElementsOf:val indent:lvl pad:maxLen+1+1 to:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2638
        ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2639
            valString := self basicDisplayStringForValue:val.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2640
            (valString includes:Character cr) ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2641
                valString := valString copyTo:(valString indexOf:Character cr)-1.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2642
                valString := valString , '...'.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2643
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2644
            s nextPutAll:valString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2645
            s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2646
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2647
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2648
    ^ s contents
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2649
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2650
    "Created: / 31-01-2012 / 18:23:15 / cg"
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2651
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2652
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2653
stringWithMessages:which
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2654
    |cls s messages |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2655
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2656
    s := CharacterWriteStream on:''.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2657
    cls := object class.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2658
    which == #local ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2659
        messages := cls selectors.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2660
    ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2661
        which == #all ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2662
            messages := cls allSelectors.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2663
        ] ifFalse:[
12611
f988e7719525 Refactoring:
Stefan Vogel <sv@exept.de>
parents: 12597
diff changeset
  2664
            messages := cls allSelectors asNewSet removeAll:cls selectors; yourself.
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2665
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2666
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2667
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2668
    messages asOrderedCollection sort do:[:eachSelector |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2669
        s nextPutAll:eachSelector.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2670
        s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2671
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2672
    ^ s contents
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2673
!
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2674
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2675
valueStringInListEntryForValue:value
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2676
    "returns something to append to the name"
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2677
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2678
    |valString|
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2679
12696
7e49db09911c class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12688
diff changeset
  2680
    valString := (self plainValueStringInListEntryForValue:value) ? ''.
12753
68e6a80fb65e class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12696
diff changeset
  2681
    (inspectedObject notNil and:[value == inspectedObject]) ifTrue:[
12784
81727a87cad8 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12753
diff changeset
  2682
        ^ ' (',valString,') (==self)' 
12696
7e49db09911c class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12688
diff changeset
  2683
    ].
12784
81727a87cad8 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12753
diff changeset
  2684
    ^ ' (',valString,')'
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2685
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2686
    "Created: / 13-06-2012 / 12:04:31 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2687
! !
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2688
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2689
!InspectorView methodsFor:'private'!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2690
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2691
baseInspectedObjectClass
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2692
    ^ Object
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2693
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2694
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2695
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2696
647
1791ceddf2ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 644
diff changeset
  2697
defaultLabel
13258
f85c3cb5bfcc class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13246
diff changeset
  2698
    ^ 'Inst & Pseudo Slots'
f85c3cb5bfcc class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13246
diff changeset
  2699
f85c3cb5bfcc class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 13246
diff changeset
  2700
    "Modified: / 30-07-2013 / 09:40:52 / cg"
647
1791ceddf2ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 644
diff changeset
  2701
!
1791ceddf2ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 644
diff changeset
  2702
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2703
derivedFieldNames
9701
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2704
    |d actionItems valueItems otherItems|
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2705
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2706
    d := self derivedFields.
12820
a3b0b7557632 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12810
diff changeset
  2707
    (d isDictionary) ifTrue:[
9701
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2708
        actionItems := d keys select:[:k | k startsWith:'!!'] as:OrderedCollection .
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2709
        valueItems := d keys select:[:k | k startsWith:'-'] as:OrderedCollection.
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2710
        otherItems := d keys select:[:k | (k startsWithAnyOf:#('!!' '-')) not] as:OrderedCollection.
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2711
        ^ ((actionItems sort , valueItems sort) collect:[:k | (k copyTo:1),(k copyFrom:2) allItalic])
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2712
          ,
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2713
          otherItems sort
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2714
    ].
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2715
    ^ d collect:[:eachEntry |
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2716
            |nm|
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2717
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2718
            nm := (eachEntry isAssociation) 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2719
                    ifTrue:[ eachEntry key ] 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2720
                    ifFalse:[ eachEntry first ].
8699
c15ffeafbe35 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8689
diff changeset
  2721
            '-',nm allItalic
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2722
        ]
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2723
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2724
    "Created: / 03-08-2006 / 15:02:54 / cg"
9701
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2725
    "Modified: / 27-01-2011 / 11:45:17 / cg"
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2726
!
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2727
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2728
derivedFields
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2729
    "the check below is not sufficient - if someone catches messages, for example.
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2730
     Therefore, we do a manual lookup here:"
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2731
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2732
    (object class whichClassIncludesSelector:#inspectorExtraAttributes) isNil ifTrue:[
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2733
        ^ #()
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2734
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2735
    ^ [object inspectorExtraAttributes]
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2736
                on: MessageNotUnderstood
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2737
                do: [:ex | ex return: #() ]
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2738
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2739
    "Created: / 17-07-2006 / 11:02:32 / cg"
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2740
    "Modified: / 29-08-2006 / 13:03:31 / cg"
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2741
!
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2742
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2743
extraNamedFieldNames
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2744
    ^ self extraNamedFields 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2745
        collect:[:eachEntry |
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2746
            |nm|
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2747
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2748
            nm := (eachEntry isAssociation) 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2749
                    ifTrue:[ eachEntry key ] 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2750
                    ifFalse:[ eachEntry first ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2751
            '`',nm
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2752
        ]
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2753
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2754
    "Modified: / 03-08-2006 / 15:17:19 / cg"
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2755
!
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2756
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2757
extraNamedFields
6940
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2758
    "by redefining inspectorExtraNamedFields to return an array of
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2759
     pseudo-fieldName->value associations, the inspectors left list can be extended"
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2760
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2761
    "the check below is not sufficient - if someone catches messages, for example.
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2762
     Therefore, we do a manual lookup here:"
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2763
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2764
    (object class whichClassIncludesSelector:#inspectorExtraNamedFields) isNil ifTrue:[
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2765
        ^ #()
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2766
    ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2767
    ^ [object inspectorExtraNamedFields]
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2768
                on: MessageNotUnderstood
6940
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2769
                do: [:ex | ex return: #() ]
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2770
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2771
    "Created: / 03-08-2006 / 13:34:18 / cg"
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2772
    "Modified: / 29-08-2006 / 13:03:57 / cg"
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2773
!
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2774
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2775
extraNamedVarIndexForLine:lineNr
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2776
    "helper - return the index for a named instVar;
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2777
     nil, if self or a keyed instvar is selected."
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2778
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2779
    |idx nNamedInstvarsShown nExtraNamedInstvarsShown cls baseCls firstRealIndex line|
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2780
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2781
    lineNr isNil ifTrue:[^ nil].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2782
    firstRealIndex := 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2783
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2784
    idx := lineNr.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2785
    self hasSelfEntry ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2786
        (lineNr == 1 or:[lineNr isNil]) ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2787
            ^ nil "/ self selected
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2788
        ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2789
        idx := idx - 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2790
        firstRealIndex := 2.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2791
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2792
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2793
    [line := self listEntryAt:firstRealIndex. 
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2794
     (line startsWith:'-') and:[line size < 2 or:[line second isDigit not]]] whileTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2795
        firstRealIndex := firstRealIndex + 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2796
        idx := idx - 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2797
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2798
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2799
    cls := object class.
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2800
    baseCls := self baseInspectedObjectClass.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2801
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2802
    nNamedInstvarsShown := cls instSize.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2803
    "/ only the namedInstvars below baseInspectedObjectClass
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2804
    "/ are shown ...
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2805
    (cls == baseCls or:[cls isSubclassOf:baseCls]) ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2806
        nNamedInstvarsShown := nNamedInstvarsShown - baseCls instSize.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2807
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2808
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2809
    idx := idx - nNamedInstvarsShown.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2810
    idx < 1 ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2811
        ^ nil.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2812
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2813
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2814
    nExtraNamedInstvarsShown := self extraNamedFields size.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2815
    idx <= nExtraNamedInstvarsShown ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2816
        ^ idx.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2817
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2818
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2819
    ^ nil "/ indexed instvar or other selected
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2820
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2821
    "Created: / 03-08-2006 / 13:45:14 / cg"
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2822
    "Modified: / 16-05-2012 / 17:54:52 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2823
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2824
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2825
fieldList 
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2826
    "return a list of names to show in the selectionList.
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2827
     Leave hasMore as true, if a '...' entry should be added."
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2828
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2829
    |derivedFieldList namedFieldList fieldList cls indexedList extraNamedFieldList|
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2830
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2831
    object isNil ifTrue:[
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2832
        ^ self hasSelfEntry ifFalse:[ #() ] ifTrue:[ #('-self') ]
3338
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  2833
    ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2834
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2835
    cls := object class.
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2836
2275
b402f5173c79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2837
    self topView withWaitCursorDo:[
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2838
        namedFieldList := self namedFieldList.
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  2839
        indexedList := self indexedFieldList.
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2840
        extraNamedFieldList := OrderedCollection new.
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2841
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2842
        self hasSelfEntry ifTrue:[
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2843
            self suppressPseudoSlots ifFalse:[
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2844
                derivedFieldList := OrderedCollection new.
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2845
                derivedFieldList addAll:(self pseudoFieldNamesWithIndexed:(indexedList notEmptyOrNil)).
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2846
                derivedFieldList addAll:(self derivedFieldNames).
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2847
                extraNamedFieldList addAll:(self extraNamedFieldNames).
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2848
            ].
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  2849
        ].
531
4b079a4e85b4 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 527
diff changeset
  2850
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2851
        fieldList := OrderedCollection new.
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2852
        derivedFieldList notNil ifTrue:[fieldList addAll:derivedFieldList].
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2853
        namedFieldList notNil ifTrue:[fieldList addAll:namedFieldList].
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2854
        extraNamedFieldList notNil ifTrue:[fieldList addAll:extraNamedFieldList].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2855
        indexedList notNil ifTrue:[fieldList addAll:indexedList].
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2856
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2857
    ^ fieldList
531
4b079a4e85b4 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 527
diff changeset
  2858
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2859
    "Modified: / 18-09-2006 / 21:16:03 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2860
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2861
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2862
hasSelfEntry
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2863
    ^ hideReceiver not and:[self suppressPseudoSlots not]
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2864
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2865
    "Created: 14.12.1995 / 19:30:03 / cg"
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  2866
    "Modified: 28.6.1996 / 15:13:41 / cg"
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2867
!
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2868
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2869
indexList 
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2870
    "return a list of indexes usable to access the object's indexed slots.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2871
     Set hasMore to true, if a '...' entry should be added."
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2872
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2873
    |objSz n cls list|
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2874
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2875
    cls := object class.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2876
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  2877
    cls isVariable ifFalse:[^ nil ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2878
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2879
    n := objSz := self numIndexedFields.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2880
    (n > nShown) ifTrue:[
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2881
        n := nShown.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2882
        hasMore := true.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2883
    ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2884
    list := (1 to:n).
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2885
    ^ list 
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2886
"/        keysAndValuesCollect:[:idx :nm |
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2887
"/            LabelAndIcon string:nm image:(self iconForValue:(object basicAt:idx))
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2888
"/        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2889
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2890
    "Modified: / 13-06-2012 / 10:14:13 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2891
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2892
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2893
indexOfFirstNamedInstvarInList
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2894
    "helper - return the index for the first named instVar;
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2895
     nil, if self or a keyed instvar is selected."
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2896
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2897
    |firstRealIndex|
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2898
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2899
    firstRealIndex := 1.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2900
    self hasSelfEntry ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2901
        firstRealIndex := 2.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2902
    ].
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2903
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2904
    [
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2905
        |line|
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2906
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2907
        line := self listEntryAt:firstRealIndex. 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2908
        (line startsWith:'-') and:[line size < 2 or:[line second isDigit not]]
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2909
    ] whileTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2910
        firstRealIndex := firstRealIndex + 1.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2911
    ].
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2912
    ^ firstRealIndex
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2913
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2914
    "Modified: / 16-05-2012 / 17:54:46 / cg"
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2915
!
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2916
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2917
indexedFieldList 
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2918
    "return a list of indexed-variable names to show in the selectionList.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2919
     Set hasMore to true, if a '...' entry should be added."
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2920
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2921
    |l maxIndex sz list|
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2922
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2923
    l := self indexList.
10858
6a95213e591a changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 10846
diff changeset
  2924
    l isEmptyOrNil ifTrue:[^ nil ].
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2925
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2926
    integerDisplayRadix ~~ 10 ifTrue:[
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2927
        maxIndex := l last.
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2928
        maxIndex isInteger ifTrue:[
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2929
            sz := (maxIndex printStringRadix:integerDisplayRadix) size.
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2930
        ] ifFalse:[
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2931
            sz := 0
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2932
        ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2933
        list := l collect:
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2934
            [:i | 
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2935
                i isInteger ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2936
                    (i printStringRadix:integerDisplayRadix size:sz fill:$0) 
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2937
                ] ifFalse:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2938
                    i printString
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2939
                ]
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2940
            ]
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2941
    ] ifFalse:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2942
        list := l collect:[:i | i printString].
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2943
    ].
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2944
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2945
    ^ list
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2946
        keysAndValuesCollect:[:idx :nm |
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2947
            |val|
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2948
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2949
            [
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2950
                val := self indexedValueAtIndex:idx.
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2951
            ] on:Error do:[
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2952
                val := ''
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2953
            ].
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2954
"/            [
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2955
"/                val := object at:idx.
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2956
"/            ] on:Error do:[
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2957
"/                [
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2958
"/                    val := object basicAt:idx
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2959
"/                ] on:Error do:[
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2960
"/                    val := ''
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2961
"/                ]
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2962
"/            ].
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2963
            self listEntryForName:nm value:val
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2964
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2965
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2966
"/    ^ list.
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2967
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2968
    "Modified: / 27-09-2012 / 21:51:58 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2969
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2970
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2971
indexedValueAtIndex:idx
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2972
    ^ object basicAt:idx
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2973
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2974
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2975
indexedValueAtIndex:idx put:newValue
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2976
    object basicAt:idx put:newValue
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2977
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2978
3884
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2979
indexedValueAtKey:key
4314
7dbc212d0cd2 kludge to show Float bytes
Claus Gittinger <cg@exept.de>
parents: 4268
diff changeset
  2980
    "/ kludge
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2981
    object isLimitedPrecisionReal ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2982
        ^ object basicAt:key
4314
7dbc212d0cd2 kludge to show Float bytes
Claus Gittinger <cg@exept.de>
parents: 4268
diff changeset
  2983
    ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2984
    ^ object at:key
3884
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2985
!
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2986
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2987
instVarIndexForLine:lineNr
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2988
    "helper - return the index for a named instVar;
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2989
     nil, if self or a keyed instvar is selected."
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2990
12849
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  2991
    |idx firstRealIndex line nm|
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2992
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2993
    lineNr isNil ifTrue:[^ nil].
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2994
    firstRealIndex := 1.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2995
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2996
    line := (self listEntryAt:lineNr) string. 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2997
    ((line startsWith:'-') and:[line size < 2 or:[line second isDigit not]])
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2998
    ifTrue:[^ nil].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2999
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3000
    nm := line asCollectionOfWords first.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3001
    idx := object class allInstVarNames indexOf:nm.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3002
    idx == 0 ifTrue:[^ nil].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3003
    ^ idx.    
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3004
12849
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3005
"/    [
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3006
"/        line := self listEntryAt:firstRealIndex. 
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3007
"/        (line startsWith:'-') and:[line size < 2 or:[line second isDigit not]]
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3008
"/    ] whileTrue:[
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3009
"/        firstRealIndex := firstRealIndex + 1.
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3010
"/        idx := idx - 1.
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3011
"/    ].
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3012
"/
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3013
"/    cls := object class.
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3014
"/    baseCls := self baseInspectedObjectClass.
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3015
"/
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3016
"/    nNamedInstvarsShown := cls instSize.
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3017
"/    "/ only the namedInstvars below baseInspectedObjectClass
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3018
"/    "/ are shown ...
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3019
"/    (cls includesBehavior:baseCls) ifTrue:[
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3020
"/        nNamedInstvarsShown := nNamedInstvarsShown - baseCls instSize.
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3021
"/    ].
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3022
"/
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3023
"/    idx <= nNamedInstvarsShown ifTrue:[
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3024
"/        ^ idx + self baseInspectedObjectClass instSize.
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3025
"/    ].
9c2b60990cea Fix stc compiler warnings
Stefan Vogel <sv@exept.de>
parents: 12820
diff changeset
  3026
"/    ^ nil "/ indexed instvar or other selected
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3027
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3028
    "Modified: / 20-07-2012 / 11:11:10 / cg"
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3029
!
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3030
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3031
keyIndexForLine:lineNr
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3032
    "helper - return the index of the key-list;
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3033
     nil, if self or a namedInstVar is selected."
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3034
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3035
    |idx nNamedInstvarsShown nExtraNamedInstvarsShown cls baseCls firstRealIndex line|
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3036
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3037
    lineNr isNil ifTrue:[^ nil].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3038
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3039
    firstRealIndex := 1.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3040
    idx := lineNr.
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3041
    self hasSelfEntry ifTrue:[
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3042
        (lineNr == 1 or:[lineNr isNil]) ifTrue:[
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3043
            ^ nil "/ self selected
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3044
        ].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3045
        idx := idx - 1.
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3046
        firstRealIndex := firstRealIndex + 1.
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3047
    ].
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3048
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3049
    [line := self listEntryAt:firstRealIndex. 
5881
ef6791c315ab oops - out of bounds error fixed
Claus Gittinger <cg@exept.de>
parents: 5845
diff changeset
  3050
     line notNil
ef6791c315ab oops - out of bounds error fixed
Claus Gittinger <cg@exept.de>
parents: 5845
diff changeset
  3051
     and:[(line startsWith:'-') and:[line size < 2 or:[line second isDigit not]]]
ef6791c315ab oops - out of bounds error fixed
Claus Gittinger <cg@exept.de>
parents: 5845
diff changeset
  3052
    ] whileTrue:[
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3053
        firstRealIndex := firstRealIndex + 1.
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3054
        idx := idx - 1.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3055
    ].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3056
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3057
    cls := object class.
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  3058
    baseCls := self baseInspectedObjectClass.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  3059
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  3060
    nNamedInstvarsShown := cls instSize.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3061
    "/ only the namedInstvars below baseInspectedObjectClass
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3062
    "/ are shown ...
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  3063
    (cls includesBehavior:baseCls) ifTrue:[
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  3064
        nNamedInstvarsShown := nNamedInstvarsShown - baseCls instSize.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  3065
    ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3066
    nExtraNamedInstvarsShown := self extraNamedFields size.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3067
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3068
    idx <= (nNamedInstvarsShown+nExtraNamedInstvarsShown) ifTrue:[
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3069
        ^ nil "/ named instVar selected.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3070
    ].
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3071
    ^ idx - (nNamedInstvarsShown+nExtraNamedInstvarsShown).
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  3072
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3073
    "Modified: / 16-05-2012 / 17:54:34 / cg"
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3074
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3075
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3076
listEntryAt:lineNr
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  3077
    |entry|
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  3078
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  3079
    entry := listView at:lineNr.
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  3080
    entry isNil ifTrue:[^ entry].
11763
f3f1b32db84b changed: #listEntryAt:
Claus Gittinger <cg@exept.de>
parents: 11749
diff changeset
  3081
    ^ entry perform:#string ifNotUnderstood:[ entry printString ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3082
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3083
    "Created: / 16-05-2012 / 17:53:39 / cg"
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3084
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3085
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3086
namedFieldAt:idx
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3087
    ^ object instVarAt:idx
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3088
!
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3089
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3090
namedFieldAt:idx put:newValue
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3091
    ^ object instVarAt:idx put:newValue
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3092
!
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3093
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3094
namedFieldList 
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3095
    "return a list of instVar names to show in the selectionList."
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3096
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  3097
    |aList cls baseCls offset|
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3098
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3099
    cls := object class.
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  3100
    baseCls := self baseInspectedObjectClass.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  3101
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  3102
    aList := OrderedCollection new.
3338
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  3103
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  3104
    aList addAll:(cls allInstVarNames).
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  3105
    offset := 0.
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  3106
    (cls includesBehavior:baseCls) ifTrue:[
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  3107
        "/ hide some stuff
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  3108
        offset := self baseInspectedObjectClass instSize.
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  3109
        aList := aList copyFrom:(offset + 1).
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  3110
    ].
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3111
    aList := aList 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3112
                keysAndValuesCollect:[:idx :nm |
11858
2da1fc1e7d22 changed: #namedFieldList
Stefan Vogel <sv@exept.de>
parents: 11846
diff changeset
  3113
                    self listEntryForName:nm value:(object instVarAt:idx+offset)
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3114
                ].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3115
    sortOrder == #alphabetical ifTrue:[
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3116
        aList sort:[:a :b | a string < b string].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  3117
    ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3118
    ^ aList
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3119
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  3120
    "Modified: / 29-07-2012 / 12:11:06 / cg"
6372
d59bab947578 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6283
diff changeset
  3121
!
d59bab947578 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6283
diff changeset
  3122
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  3123
numIndexedFields
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  3124
    ^ inspectedObject basicSize
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  3125
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  3126
    "Created: / 13-06-2012 / 10:13:24 / cg"
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  3127
!
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  3128
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3129
pseudoFieldNames
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3130
    "return a list of names to show in the selectionList.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3131
     Leave hasMore as true, if a '...' entry should be added."
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3132
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3133
    ^ self pseudoFieldNamesWithIndexed: object class isVariable
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3134
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3135
    "Modified: / 06-06-2012 / 11:56:56 / cg"
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3136
!
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3137
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3138
pseudoFieldNamesWithIndexed:withIndexed
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3139
    "return a list of names to show in the selectionList.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3140
     Leave hasMore as true, if a '...' entry should be added."
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3141
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3142
    |list cls|
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3143
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3144
    cls := object class.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3145
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3146
    list := OrderedCollection new.
12448
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3147
    self hasSelfEntry ifTrue:[
13870
f879d86b381f merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13768
diff changeset
  3148
        list add:'-' , (object isJavaObject ifTrue:['this'] ifFalse:['self']) allItalic.
12448
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3149
    ].
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3150
    hideMessages ifFalse:[
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3151
        list add:'-' , 'local messages' allItalic.
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3152
        "/ list add:'-' , 'inherited messages' allItalic.
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3153
        list add:'-' , 'all messages' allItalic.
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3154
    ].
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3155
    hideHashes ifFalse:[
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3156
        list add:'-' , 'hash' allItalic.
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3157
        list add:'-' , 'identityHash' allItalic.
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3158
    ].
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3159
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3160
    withIndexed ifTrue:[
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  3161
        list add:'-' , 'basicSize' allItalic, (self valueStringInListEntryForValue:object basicSize).
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3162
    ].
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3163
    object isCollection ifTrue:[
11909
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  3164
        (cls whichClassImplements:#size) ~~ (cls whichClassImplements:#basicSize) ifTrue:[
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  3165
            Error handle:[:ex |
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  3166
            ] do:[
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  3167
                "/ Iterator has trouble
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  3168
                list add:'-' , 'size' allItalic , (self valueStringInListEntryForValue:object size).
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  3169
            ].
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3170
        ]
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3171
    ].
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3172
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3173
    cls hasImmediateInstances ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3174
        object dependents notEmptyOrNil ifTrue:[
11895
aedb513e0d33 changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11893
diff changeset
  3175
            list add:'-' , 'dependents' allItalic, (self valueStringInListEntryForValue:object dependents size).
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3176
        ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3177
    ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3178
    cls instSize > 0 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3179
        list add:'-' , 'all inst vars' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3180
    ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3181
    (withIndexed and:[self showAllIndexedVarsInFieldList]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3182
        list add:'-' , 'all indexed vars' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3183
    ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3184
    ^ list
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3185
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  3186
    "Modified: / 13-06-2012 / 12:10:16 / cg"
13870
f879d86b381f merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13768
diff changeset
  3187
    "Modified: / 05-11-2013 / 17:57:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3188
!
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  3189
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3190
setAcceptAction
12457
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  3191
    "set the codeView's accept action"
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3192
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3193
    |idx acceptAction sel|
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3194
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3195
    acceptAction := [:theText | self doAccept:theText asString].
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3196
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3197
    idx := self theSingleSelectionIndex.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3198
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3199
    (idx isNil 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3200
    or:[ object class hasImmediateInstances])
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3201
    ifTrue:[
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3202
        acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3203
    ] ifFalse:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3204
        sel := self listEntryAt:idx.
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3205
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  3206
        (sel startsWith:'-all') ifTrue:[
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3207
            acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3208
        ].
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3209
        (sel startsWith:'-hash') ifTrue:[
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3210
            acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3211
        ].
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3212
        (sel startsWith:'-basicSize') ifTrue:[
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3213
            acceptAction := nil.
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3214
        ].
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3215
        (sel startsWith:'-size') ifTrue:[
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3216
            acceptAction := nil.
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3217
        ].
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3218
        (sel startsWith:'-identityHash') ifTrue:[
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3219
            acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3220
        ].
3634
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  3221
        (sel startsWith:'-dependents') ifTrue:[
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  3222
            acceptAction := nil.
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  3223
        ].
5134
536fbfead179 source field for methods
Claus Gittinger <cg@exept.de>
parents: 4999
diff changeset
  3224
        (sel startsWith:'-source') ifTrue:[
536fbfead179 source field for methods
Claus Gittinger <cg@exept.de>
parents: 4999
diff changeset
  3225
            acceptAction := nil.
536fbfead179 source field for methods
Claus Gittinger <cg@exept.de>
parents: 4999
diff changeset
  3226
        ].
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3227
    ].
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3228
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3229
    workspace acceptAction:acceptAction.
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3230
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3231
    "Modified: / 06-06-2012 / 11:57:27 / cg"
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3232
!
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3233
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3234
setDoItAction
542
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  3235
    "set the codeViews doit action"
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  3236
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  3237
    workspace 
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3238
        doItAction:[:theCode |
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3239
            |evaluator|
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3240
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3241
            (evaluator := object class evaluatorClass)
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3242
            notNil ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3243
                evaluator
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3244
                    evaluate:theCode 
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3245
                    in:nil 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3246
                    receiver:object 
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3247
                    notifying:workspace 
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3248
                    logged:true 
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3249
                    ifFail:nil
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3250
            ] ifFalse:[
12457
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  3251
                'object''s class provides no evaluator'
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3252
            ]
12916
5d4c346e2bf3 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12886
diff changeset
  3253
        ];
5d4c346e2bf3 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12886
diff changeset
  3254
        editedMethodOrClass:(object class).
542
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  3255
12457
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  3256
"/    object class evaluatorClass isNil ifTrue:[
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  3257
"/        workspace doItAction:nil.
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  3258
"/        workspace acceptAction:nil.
db4080187675 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12448
diff changeset
  3259
"/    ]
1270
3dc841708edd disable accept/doIt, if instances class provides no evaluator
Claus Gittinger <cg@exept.de>
parents: 1235
diff changeset
  3260
3dc841708edd disable accept/doIt, if instances class provides no evaluator
Claus Gittinger <cg@exept.de>
parents: 1235
diff changeset
  3261
    "Modified: 1.8.1997 / 21:47:09 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3262
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3263
3884
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  3264
showAllIndexedVarsInFieldList
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  3265
    ^ true
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  3266
!
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  3267
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3268
theSingleSelectionIndex
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3269
    "helper - return the index of the (single) selected entry.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3270
     Nil if nothing or multiple items are selected"
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3271
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3272
    |idx|
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3273
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3274
    idx := selectionIndex.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3275
    idx isCollection ifTrue:[
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3276
        selectionIndex size == 1 ifTrue:[
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3277
            ^ selectionIndex first
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3278
        ].
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3279
        ^ nil
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3280
    ].
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3281
    ^ selectionIndex
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3282
!
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3283
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3284
valueAtLine:lineNr
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3285
    "helper - return the value of the selected entry"
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3286
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3287
    |idx l val|
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3288
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3289
    (self hasSelfEntry
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3290
    and:[lineNr == 1 or:[lineNr isNil]]) ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3291
        ^ object
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3292
    ].
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  3293
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3294
    ((l := self listEntryAt:lineNr) startsWith:$-) ifTrue:[
11839
8eda3c0dda51 changed: #valueAtLine:
Claus Gittinger <cg@exept.de>
parents: 11835
diff changeset
  3295
        (l ~= '-' 
8eda3c0dda51 changed: #valueAtLine:
Claus Gittinger <cg@exept.de>
parents: 11835
diff changeset
  3296
        and:[(l at:2) isSeparator not
8eda3c0dda51 changed: #valueAtLine:
Claus Gittinger <cg@exept.de>
parents: 11835
diff changeset
  3297
        and:[(l at:2) isDigit not "negative number"]]) ifTrue:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3298
            ^ self valueForSpecialLine:l
3645
d88ce5dea1ce *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  3299
        ].
3338
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  3300
    ].
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  3301
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3302
    "/ a named instVar ?
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3303
    idx := self instVarIndexForLine:lineNr.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3304
    idx notNil ifTrue:[
3432
087493c18c74 class based exceptions - no longer need to send #breakPointSígnal
Claus Gittinger <cg@exept.de>
parents: 3428
diff changeset
  3305
        BreakPointInterrupt catch:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3306
            ^ self namedFieldAt:idx
2800
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  3307
        ]
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3308
    ].
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3309
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3310
    "/ an extra named field ?
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3311
    idx := self extraNamedVarIndexForLine:lineNr.
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3312
    idx notNil ifTrue:[
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3313
        BreakPointInterrupt catch:[
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3314
            val := ((self extraNamedFields) at:idx) value.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3315
            val isBlock ifTrue:[ val := val value ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3316
            ^ val
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3317
        ]
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3318
    ].
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3319
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3320
    "/ an indexed instVar ?
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3321
    idx := self keyIndexForLine:lineNr.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3322
    idx notNil ifTrue:[
3432
087493c18c74 class based exceptions - no longer need to send #breakPointSígnal
Claus Gittinger <cg@exept.de>
parents: 3428
diff changeset
  3323
        BreakPointInterrupt catch:[
2800
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  3324
            ^ self indexedValueAtIndex:idx.
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  3325
        ]
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3326
    ].
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  3327
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3328
    "/ nope
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3329
    ^ nil
613
048942111c7b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  3330
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3331
    "Modified: / 16-05-2012 / 17:54:06 / cg"
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3332
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3333
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3334
valueAtLine:lineNr put:newValue
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3335
    |idx|
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3336
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3337
    idx := self instVarIndexForLine:selectionIndex.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3338
    idx notNil ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3339
        self namedFieldAt:idx put:newValue.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3340
        ^ self.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3341
    ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3342
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3343
    idx := self keyIndexForLine:selectionIndex.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3344
    idx notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3345
        self indexedValueAtIndex:idx put:newValue.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3346
        ^ self
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3347
    ].
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3348
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3349
    ^ self "/ self selected - dont store
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3350
!
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3351
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3352
valueForSpecialLine:line
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3353
    |idx fieldEntry extraAttributes fields|
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3354
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3355
    extraAttributes := object inspectorExtraAttributes.
8664
c6afed1e4bfa changed #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 8653
diff changeset
  3356
    (extraAttributes notNil and:[ extraAttributes includesKey:line ]) ifTrue:[
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  3357
        ^ (extraAttributes at:line) value 
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  3358
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3359
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3360
    idx := self derivedFieldNames findFirst:[:l | l string = line string ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3361
    idx ~~ 0 ifTrue:[
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3362
        "a lot of backward compatibility crab which has to go away..."
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3363
        fields := self derivedFields.
12820
a3b0b7557632 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12810
diff changeset
  3364
        (fields isDictionary) ifTrue:[
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3365
            fieldEntry := fields associationAt:line string "idx".
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3366
        ] ifFalse:[
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3367
            fieldEntry := fields associationAt:idx.
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3368
        ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3369
    ] ifFalse:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3370
        idx := self extraNamedFieldNames indexOf:line.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3371
        idx ~~ 0 ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3372
            fieldEntry := self extraNamedFields at:idx.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3373
        ].
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3374
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3375
    fieldEntry notNil ifTrue:[
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3376
        fieldEntry isAssociation ifTrue:[
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3377
            ^ fieldEntry value value
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3378
        ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3379
        ^ fieldEntry at:2.
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3380
    ].
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3381
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3382
    (line startsWith:'-self') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3383
        ^ object
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3384
    ].
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3385
    (line startsWith:'-basicSize') ifTrue:[
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3386
        ^ object basicSize
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3387
    ].
9504
196c6f7d3cc4 changed: #valueForSpecialLine:
Stefan Vogel <sv@exept.de>
parents: 9396
diff changeset
  3388
    (line startsWith:'-size') ifTrue:[
196c6f7d3cc4 changed: #valueForSpecialLine:
Stefan Vogel <sv@exept.de>
parents: 9396
diff changeset
  3389
        ^ object size
196c6f7d3cc4 changed: #valueForSpecialLine:
Stefan Vogel <sv@exept.de>
parents: 9396
diff changeset
  3390
    ].
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3391
    (line startsWith:'-hash') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3392
        ^ object hash
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3393
    ].
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3394
    (line startsWith:'-identityHash') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3395
        ^ object identityHash
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3396
    ].
3634
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  3397
    (line startsWith:'-dependents') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3398
        ^ object dependents
3634
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  3399
    ].
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  3400
    (line startsWith:'-all') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3401
        ^ object
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3402
    ].
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3403
    (line startsWith:'-local messages') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3404
        ^ object
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3405
    ].
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3406
    (line startsWith:'-inherited messages') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3407
        ^ object
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3408
    ].
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3409
    (line startsWith:'-all messages') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3410
        ^ object
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3411
    ].
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3412
12448
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3413
    (line startsWith:'--- ') ifTrue:[
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3414
        "/ info line, such as '--- classvariables from...'
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3415
        ^ object
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3416
    ].
8495e3427e92 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12103
diff changeset
  3417
3526
d8f3082ea1d7 Remove unused vars
Stefan Vogel <sv@exept.de>
parents: 3525
diff changeset
  3418
    self error:'unknown special line'.
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3419
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3420
    "Created: / 31-10-2001 / 09:17:45 / cg"
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3421
    "Modified: / 06-06-2012 / 11:57:54 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3422
! !
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3423
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3424
!InspectorView methodsFor:'queries'!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3425
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3426
canInspect:anObject
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3427
    ^ anObject inspectorClass == self class
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3428
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3429
5925
6502b73091ab *** empty log message ***
ca
parents: 5913
diff changeset
  3430
compilerClass
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3431
    ^ object class compilerClass
5925
6502b73091ab *** empty log message ***
ca
parents: 5913
diff changeset
  3432
!
6502b73091ab *** empty log message ***
ca
parents: 5913
diff changeset
  3433
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3434
dereferenceValueHolders
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3435
    ^ dereferenceValueHolders ? false
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3436
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3437
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3438
labelFor:anObject
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3439
    "return the windowLabel to use in my topView, when inspecting anObject."
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3440
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3441
    |lbl|
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3442
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3443
    (self class == InspectorView
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3444
    and:[anObject inspectorClass ~~ InspectorView]) ifTrue:[
6130
8f6c6203e608 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6034
diff changeset
  3445
        lbl := 'BasicInspector on: '
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3446
    ] ifFalse:[
6130
8f6c6203e608 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6034
diff changeset
  3447
        lbl := 'Inspector on: '
5958
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3448
    ].
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3449
    ^ (self class classResources string:lbl)
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3450
    , (self class commonLabelFor:anObject)
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3451
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3452
    "Modified: / 15-07-2011 / 16:22:05 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3453
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3454
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3455
labelNameFor:anObject
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3456
    "return the iconLabel to use in my topView, when inspecting anObject.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3457
     Simply returns the className or name of anObjects class"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3458
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
  3459
    ^ self class labelNameFor:anObject
5958
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3460
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3461
    "
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3462
     1234 inspect
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3463
     true inspect
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3464
     $a inspect
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3465
    "
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
  3466
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
  3467
    "Modified: / 25-07-2012 / 10:15:06 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3468
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3469
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3470
selectedKeyName
11910
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3471
    |sel|
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3472
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3473
    selectionIndex notNil ifTrue:[
11910
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3474
        sel := listView listAt:selectionIndex.
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3475
        sel notNil ifTrue:[
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3476
            sel := sel string.
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3477
            sel := sel copyUpTo:(Character space).
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3478
            ^ sel
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3479
        ].
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3480
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3481
    ^ nil
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3482
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3483
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3484
suppressPseudoSlots
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3485
    ^ suppressPseudoSlots ? false
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3486
! !
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3487
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3488
!InspectorView methodsFor:'selection'!
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3489
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3490
selection:lineNr
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3491
    self showSelection:lineNr
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3492
!
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3493
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3494
showSelection:lineNr
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3495
    "user clicked on an instvar - show value in workspace"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3496
9672
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3497
    |listSize val|
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3498
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3499
    listSize := listView list size.
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3500
    listSize == 0 ifTrue:[^ self].
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3501
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3502
    (hasMore and:[lineNr == listSize]) ifTrue:[
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3503
        "clicked on the '...' entry"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3504
        self showMore.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3505
        listView setSelection:lineNr.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3506
    ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3507
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3508
    self hasSelfEntry ifTrue:[
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3509
        (self hasSelfEntry and:[lineNr == 1]) ifTrue:[
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3510
            "selecting self also does a re-set, this allows updating the list"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3511
            self reinspect.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3512
        ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3513
    ].
10521
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3514
    selectionIndex := selectedLine := lineNr.
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3515
    val := self selection.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3516
    self showValue:val.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3517
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3518
    self setAcceptAction.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3519
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3520
    "Modified: / 03-08-2006 / 14:26:22 / cg"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3521
!
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3522
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3523
showValue:someValue 
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3524
    "user clicked on an entry - show value in workspace"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3525
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3526
    |s|
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3527
9651
cca26b954d45 changed:
Claus Gittinger <cg@exept.de>
parents: 9648
diff changeset
  3528
    self "topView" withWaitCursorDo:[
11946
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3529
        [
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3530
            s := self displayStringForValue:someValue.
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3531
        ] valueWithWatchDog:[
12642
6dab05146bff class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12611
diff changeset
  3532
            s := someValue classNameWithArticle,' "- printString generation took too long"'
6dab05146bff class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12611
diff changeset
  3533
        ] afterMilliseconds:1000.
11946
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3534
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3535
        s = workspace selectionAsString ifFalse:[
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3536
            workspace replace:s.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3537
        ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3538
    ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3539
11946
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3540
    "Modified: / 28-10-2012 / 11:03:04 / cg"
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3541
! !
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3542
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3543
!InspectorView methodsFor:'user interaction'!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3544
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3545
doAccept:theText
11551
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3546
    |sel newValue fieldNameList|
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3547
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3548
    sel := self listEntryAt:(self theSingleSelectionIndex).
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3549
    (sel startsWith:'-all') ifTrue:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3550
        workspace flash.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3551
        ^ self.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3552
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3553
4642
ee63c37d9d3c Convert Object>>errorSignal -> Error
Stefan Vogel <sv@exept.de>
parents: 4314
diff changeset
  3554
    Error handle:[:ex |
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3555
        workspace flash
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3556
    ] do:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3557
        newValue := object class evaluatorClass 
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3558
                       evaluate:theText
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3559
                       receiver:object 
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3560
                       notifying:workspace.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3561
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3562
        self dereferenceValueHolders ifTrue:[
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3563
            (self valueAtLine:selectionIndex) value:newValue
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3564
        ] ifFalse:[
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3565
            self valueAtLine:selectionIndex put:newValue.
11551
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3566
        ].
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3567
        "/ update the fieldList...
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3568
        fieldNameList := self fieldList.                               
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3569
        hasMore ifTrue:[
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3570
            fieldNameList add:' ... '
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3571
        ].
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3572
        listView contents:fieldNameList.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3573
    ]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3574
11551
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3575
    "Modified: / 04-06-2012 / 18:16:29 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3576
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3577
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3578
doCopyKey
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3579
    "put the instVar-name into the text-copy-buffer"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3580
9378
07c0ca7444b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9375
diff changeset
  3581
    |nm selIdx|
07c0ca7444b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9375
diff changeset
  3582
07c0ca7444b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9375
diff changeset
  3583
    (selIdx := self theSingleSelectionIndex) notNil ifTrue:[
11916
b64155bfd864 changed: #doCopyKey
Claus Gittinger <cg@exept.de>
parents: 11910
diff changeset
  3584
        nm := self selectedKeyName.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3585
        nm notNil ifTrue:[
6034
7f7d4b7362dd set selection interface changed
ca
parents: 5958
diff changeset
  3586
            self setClipboardText:(nm asString)
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3587
        ]
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3588
    ]
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3589
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3590
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  3591
doInspect:basicBooleanOrSymbolForHow
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3592
    "user selected inspect-menu entry"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3593
12528
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  3594
    self doInspect:self selectedField basic:basicBooleanOrSymbolForHow
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  3595
!
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  3596
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  3597
doInspect:objectToInspect basic:basic
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  3598
    "user selected inspect-menu entry"
a12288a0588a class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 12496
diff changeset
  3599
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  3600
    objectToInspect notNil ifTrue:[
9349
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  3601
        (basic == #new and:[NewInspector::NewInspectorView notNil]) ifTrue:[
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3602
            NewInspector::NewInspectorView inspect:objectToInspect
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3603
        ] ifFalse:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3604
            basic ifTrue:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3605
                objectToInspect basicInspect
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3606
            ] ifFalse:[
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3607
                "/ cg: a bad hack; it is ok for a double-click, but not for the
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3608
                "/ menu item (i often want to have another inspector on the same object)
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3609
                "/ for the menu: add an extra follow/diveIn or whatever entry, if desired
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3610
"/                "HACK"
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3611
"/                app := (self topView perform:#application ifNotUnderstood: [nil]).
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3612
"/                (app notNil and:[app isKindOf: Tools::Inspector2]) ifTrue:[
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3613
"/                    app inspect: objectToInspect
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3614
"/                ] ifFalse:[
10207
e2968eb0d08e changed: #doInspect: to open instvars within same Inspector2 window
vrany
parents: 9794
diff changeset
  3615
                    objectToInspect inspect
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3616
"/                ]
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3617
            ]
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  3618
        ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  3619
    ].
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3620
10207
e2968eb0d08e changed: #doInspect: to open instvars within same Inspector2 window
vrany
parents: 9794
diff changeset
  3621
    "Modified: / 06-07-2011 / 15:58:55 / jv"
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  3622
    "Modified: / 27-07-2012 / 22:43:11 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3623
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3624
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3625
doUpdate
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3626
    self reinspect
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3627
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3628
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3629
monitor:anInstVarName
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3630
    "start a monitoring process, showing the given instVar
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3631
     in regular intervals."
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3632
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3633
    |ivName|
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3634
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3635
    (ivName := anInstVarName) isInteger ifTrue:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3636
        ivName := anInstVarName printString
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3637
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3638
    listView selectElement:ivName.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3639
    self doStartMonitor
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3640
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3641
    "Created: / 1.3.1996 / 19:31:45 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3642
    "Modified: / 12.2.1999 / 16:05:47 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3643
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3644
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3645
selection
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3646
    "helper - return the value of the (single) selected entry.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3647
     Nil if nothing or multiple items are selected"
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3648
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3649
    |idx val|
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3650
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3651
    idx := self theSingleSelectionIndex.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3652
    idx isNil ifTrue:[^ nil].
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3653
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3654
    val := self valueAtLine:idx.
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3655
    self dereferenceValueHolders ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3656
        "workspace-variable-inspection"
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3657
        val := val value
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3658
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3659
    ^ val
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3660
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3661
    "Modified: / 03-08-2006 / 14:27:02 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3662
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3663
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3664
showLast
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3665
    "user clicked on an instvar - show value in workspace"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3666
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3667
    |lastIdx|
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3668
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3669
    lastIdx := listView list size.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3670
    lastIdx ~~ 0 ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3671
        self showSelection:lastIdx.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3672
        listView selection:lastIdx.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3673
    ]
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3674
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3675
    "Created: 28.6.1996 / 15:06:38 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3676
    "Modified: 18.3.1997 / 18:22:54 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3677
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3678
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3679
tryToSelectKeyNamed:aString
11599
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3680
    |list idx aStringWithSpace|
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3681
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3682
    aString isEmptyOrNil ifTrue:[^ self].
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3683
11603
6f7540a1e057 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11599
diff changeset
  3684
    aStringWithSpace := aString string,' '.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3685
5558
8b9d99f714d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 5498
diff changeset
  3686
    list := listView list.
8b9d99f714d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 5498
diff changeset
  3687
    list notNil ifTrue:[
11603
6f7540a1e057 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11599
diff changeset
  3688
        (idx := list findFirst:[:line | line = aString or:[line string startsWith:aStringWithSpace]]) ~= 0 ifTrue:[
5558
8b9d99f714d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 5498
diff changeset
  3689
            listView selection:idx
8b9d99f714d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 5498
diff changeset
  3690
        ].
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3691
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3692
11599
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3693
    "Created: / 16-11-2001 / 13:48:51 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3694
! !
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3695
4268
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3696
!InspectorView methodsFor:'workspace protocol'!
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3697
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3698
modified:aBoolean
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3699
    ^ workspace modified:aBoolean
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3700
!
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3701
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3702
saveAs:file doAppend:doAppend
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3703
    workspace saveAs:file doAppend:doAppend
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3704
! !
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3705
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
  3706
!InspectorView class methodsFor:'documentation'!
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3707
10521
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3708
version
14102
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  3709
    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.328 2014-03-04 12:53:11 cg Exp $'
10521
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3710
!
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3711
8868
1fd94adeda59 changed: #setInitialSelection
Claus Gittinger <cg@exept.de>
parents: 8800
diff changeset
  3712
version_CVS
14102
6128c780a9c5 class: InspectorView
Claus Gittinger <cg@exept.de>
parents: 14070
diff changeset
  3713
    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.328 2014-03-04 12:53:11 cg Exp $'
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3714
! !
12103
00db0ef29541 class: InspectorView
Stefan Vogel <sv@exept.de>
parents: 12090
diff changeset
  3715