InspectorView.st
author Claus Gittinger <cg@exept.de>
Wed, 21 Nov 2012 14:35:59 +0100
changeset 12063 712accefee7a
parent 12031 d36e19c23f23
child 12076 e19be49ded36
permissions -rw-r--r--
added: #imageFor_nil1 #imageFor_nil2 changed: #imageFor_nil #imageFor_others
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
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    20
		headLineLabel sortOrder'
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    21
	classVariableNames:'DefaultIcon IdDictionary NextSequentialID LastExtent
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    22
		DefaultIntegerDisplayRadix ExpandArraysInAllLists'
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    23
	poolDictionaries:''
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
    24
	category:'Interface-Inspector'
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
    25
!
571fd5eee315 Initial revision
claus
parents:
diff changeset
    26
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
    27
!InspectorView class methodsFor:'documentation'!
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    28
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    29
copyright
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    30
"
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    31
 COPYRIGHT (c) 1989 by Claus Gittinger
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
    32
              All Rights Reserved
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    33
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    34
 This software is furnished under a license and may be used
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    35
 only in accordance with the terms of that license and with the
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    36
 inclusion of the above copyright notice.   This software may not
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    37
 be provided or otherwise made available to, or used by, any
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    38
 other person.  No title to or ownership of the software is
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    39
 hereby transferred.
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    40
"
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
documentation
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    44
"
1570
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    45
    This class implements a graphical inspector.
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    46
    Inspecting can be done on an object -
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    47
    (where its instvarnames/values are inspected)
1570
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    48
    or a list of objects (where a nameArray/valuesArray is inspected).
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    49
    The later is used by the debugger to inspect method variables/args.
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    50
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    51
    The system calls the inspector through the global variable 'Inspector'
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    52
    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
    53
    set to MiniInspector in a smalltalk without graphical user interface,
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    54
    or to NewInspector if that is wanted).
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
    55
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    56
    Also notice, that there are two methods to inspect an object:
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    57
    sending #basicInspect to any object, will open this kind of inspector on 
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    58
    it (showing instance variables which are physically present).
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    59
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    60
    Sending it #inspect, will - depending on the object - sometimes invoke a
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    61
    specialized inspector. 
1570
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    62
    (see OrderedCollectionInspectorView, ImageInspectorView, 
7b8bda4df1dc comment
Claus Gittinger <cg@exept.de>
parents: 1494
diff changeset
    63
     ColorInspectorView etc. as examples).
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    64
446
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    65
    You can also open a monitoring inspector, which displays some instance
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    66
    variable in regular intervals. See #openOn:monitor:.
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    67
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
    68
    examples:
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    69
            #(1 2 3 4) asOrderedCollection inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    70
            #(1 2 3 4) asOrderedCollection basicInspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    71
            (Array new:10000) inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    72
            (Image fromFile:'bitmaps/claus.gif') inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    73
            (Image fromFile:'bitmaps/claus.gif') basicInspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    74
            (Image fromFile:'bitmaps/SBrowser.xbm') inspect
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    75
            (Image fromFile:'bitmaps/SBrowser.xbm') basicInspect
446
8ded3f1df7d2 commentary
Claus Gittinger <cg@exept.de>
parents: 426
diff changeset
    76
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    77
            InspectorView openOn:Display
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    78
            InspectorView openOn:Display monitor:'shiftDown'
11660
bf523c8f3232 changed: #documentation
Claus Gittinger <cg@exept.de>
parents: 11658
diff changeset
    79
            InspectorView openOn:(Image fromScreen)
bf523c8f3232 changed: #documentation
Claus Gittinger <cg@exept.de>
parents: 11658
diff changeset
    80
            InspectorView openOn:(Image fromFile:'banner8.xpm')
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    81
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
    82
    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
    83
    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
    84
    inspector from changing the topViews window label.
510
6543e55fb227 documentation
Claus Gittinger <cg@exept.de>
parents: 472
diff changeset
    85
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    86
    Notice:
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    87
        the instvars 'inspectedObject' and 'selectedLine' have been 
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    88
        renamed to 'object' and 'selectionIndex' for squeak compatibility;
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    89
        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
    90
        smooth migration.
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
    91
6940
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    92
  Controlling the contents from the inspected object.
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    93
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    94
    By redefining inspectorExtraAttributes or inspectorExtraNamedFields, the inspected
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    95
    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
    96
    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
    97
    of pseudo slot-name, slot-value pairs.
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
    98
    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
    99
    These are added (read only) to the list.
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
   100
510
6543e55fb227 documentation
Claus Gittinger <cg@exept.de>
parents: 472
diff changeset
   101
    [author:]
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
   102
        Claus Gittinger
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   103
"
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   104
! !
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   105
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   106
!InspectorView class methodsFor:'instance creation'!
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   107
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   108
for:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   109
    "create and launch a new inspector for anObject.
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   110
     This protocol is a historic leftover - this method will vanish."
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   111
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   112
    ^ self openOn:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   113
!
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
inspect:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   116
    "create and launch a new inspector for anObject.
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   117
     This protocol is a historic leftover - this method will vanish."
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   118
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   119
    ^ self openOn:anObject
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   120
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
   121
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   122
openOn:anObject
571fd5eee315 Initial revision
claus
parents:
diff changeset
   123
    "create and launch a new inspector for anObject"
571fd5eee315 Initial revision
claus
parents:
diff changeset
   124
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   125
    ^ self openOn:anObject monitor:nil
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   126
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
     InspectorView openOn:(5 @ 7)
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   129
     InspectorView openOn:(Array new:400)
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   130
     DictionaryInspectorView openOn:(IdentityDictionary new)
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   131
    "
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
    "Modified: 1.3.1996 / 19:31:03 / cg"
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   134
!
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   135
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   136
openOn:anObject monitor:anInstVarNameOrNil
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   137
    "create and launch a new inspector for anObject.
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   138
     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
   139
     (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
   140
105
claus
parents: 100
diff changeset
   141
    |topView inspectorView|
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   142
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   143
    topView := StandardSystemView new.
9295
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   144
    topView
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   145
        icon:self defaultIcon;
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   146
        label:'Inspector';
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   147
        iconLabel:'Inspector';  
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   148
        extent:self defaultTopViewExtent;
34141a7227ca changed: #openOn:monitor:
Stefan Vogel <sv@exept.de>
parents: 9280
diff changeset
   149
        objectAttributeAt:#rememberExtent put:true.
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   150
571fd5eee315 Initial revision
claus
parents:
diff changeset
   151
    inspectorView := self origin:(0.0 @ 0.0)
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   152
                          corner:(1.0 @ 1.0)
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   153
                             in:topView.
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   154
3
claus
parents: 0
diff changeset
   155
    "kludge: must realize first, to be able to set menu again"
352
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
   156
    topView openAndWait.
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   157
    topView windowGroup 
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   158
        focusSequence:(Array 
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   159
                            with:inspectorView listView
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   160
                            with:inspectorView workspace).
9262
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   161
    inspectorView 
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   162
        allowFollow:true;
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   163
        isStandaloneInspector:true;
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   164
        inspect:anObject.
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   165
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   166
    anInstVarNameOrNil notNil ifTrue:[
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   167
        inspectorView monitor:anInstVarNameOrNil
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   168
    ].
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   169
69
0d6acfdae045 *** empty log message ***
claus
parents: 61
diff changeset
   170
    ^ inspectorView
0
571fd5eee315 Initial revision
claus
parents:
diff changeset
   171
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   172
    "
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   173
     |m|
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   174
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   175
     m := 1 asValue.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   176
     InspectorView openOn:m monitor:'value'.
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   177
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   178
     2 to:10 do:[:i |
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   179
         Delay waitForSeconds:1.
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   180
         m value:i
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   181
     ]
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   182
    "
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   183
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   184
    "
416
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   185
     |o|
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   186
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   187
     o := Array with:1 with:2 with:3.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   188
     InspectorView openOn:o monitor:'2'.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   189
     Delay waitForSeconds:1.
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   190
     o at:2 put:20
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   191
    "
fd30ab6185c7 added startup-with-monitor method
Claus Gittinger <cg@exept.de>
parents: 383
diff changeset
   192
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   193
    "Created: / 01-03-1996 / 19:30:50 / cg"
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   194
    "Modified: / 23-10-2007 / 19:08:21 / cg"
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   195
!
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
openOn:anObject withEvalPane:withEvalPane
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   198
    ^ self openOn:anObject
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   199
!
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   200
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   201
openOn:anObject withEvalPane:withEvalPane withLabel:aLabel
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   202
    ^ self openOn:anObject
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   203
! !
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   204
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   205
!InspectorView class methodsFor:'common label support'!
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   206
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   207
commonLabelFor:anObject
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   208
    "return the windowLabel to use in my topView, when inspecting anObject.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   209
     Identical objects are labelled with the same id, which makes it easy to
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   210
     see if two objects are identical (and is very useful, indeed).
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   211
     WARNING: used by both Inspector and Inspector2 !!!!!!"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   212
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   213
    |lbl id extra|
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   214
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   215
    lbl := ''.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   216
    (anObject isImmediate
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   217
    or:[anObject isBoolean]) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   218
        lbl := '<%2> ' 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   219
    ].
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   220
    lbl := lbl , '%1%3'.
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   221
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   222
    IdDictionary isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   223
        IdDictionary := WeakIdentityDictionary new.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   224
    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   225
    [    
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   226
        id := IdDictionary 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   227
                    at:anObject 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   228
                    ifAbsentPut:[ 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   229
                        |nextID|
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   230
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   231
                        nextID := NextSequentialID ? 0.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   232
                        NextSequentialID := nextID + 1.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   233
                        nextID
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   234
                    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   235
    ] valueUninterruptably.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   236
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   237
    extra := ''.
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   238
    "/ the following should be provided by the inspected object (labelInInspector)
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   239
    anObject isImage ifTrue:[
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   240
        anObject fileName notNil ifTrue:[
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   241
            extra := ' (', anObject fileName asFilename baseName,')'
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   242
        ]
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   243
    ].
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   244
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   245
    ^ self classResources 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   246
        string:lbl 
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   247
        with:(self labelNameFor:anObject)
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   248
        with:id
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
   249
        with:extra
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   250
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   251
    "Created: / 15-07-2011 / 16:21:44 / cg"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   252
!
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   253
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   254
labelNameFor:anObject
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   255
    "return the iconLabel to use in my topView, when inspecting anObject.
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   256
     Simply returns the className or name of anObjects class"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   257
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   258
    |s|
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   259
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   260
    anObject isClass ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   261
        s := anObject displayString
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   262
    ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   263
        (anObject isImmediate
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   264
         or:[anObject isBoolean]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   265
            s := anObject printString , ', ' , anObject classNameWithArticle
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   266
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   267
            s := anObject classNameWithArticle
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   268
        ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   269
    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   270
    s isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   271
        anObject isBehavior ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   272
            ^ 'someBehavior'
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   273
        ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   274
        ^ 'something'
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   275
    ].
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   276
    ^ s
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   277
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   278
    "Created: / 15-07-2011 / 16:20:06 / cg"
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   279
! !
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   280
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
   281
!InspectorView class methodsFor:'defaults'!
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   282
1873
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   283
defaultExtent
9389
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   284
    ^ (Screen current usableExtent // 3)
1873
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   285
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   286
    "Created: / 7.9.1998 / 13:47:45 / cg"
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   287
    "Modified: / 7.9.1998 / 14:15:38 / cg"
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   288
!
5fd55aa184d4 added redefinable #defaultExtent method.
Claus Gittinger <cg@exept.de>
parents: 1855
diff changeset
   289
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   290
defaultIcon
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   291
    "return the browsers default window icon"
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   292
7835
ba364068a743 icon resource
Claus Gittinger <cg@exept.de>
parents: 7808
diff changeset
   293
    <resource: #programImage>
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   294
    <resource: #style (#INSPECTOR_ICON #INSPECTOR_ICON_FILE)>
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   295
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   296
    |nm i resources|
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   297
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   298
    (i := DefaultIcon) isNil ifTrue:[
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   299
        resources := self classResources.
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   300
        i := resources at:#INSPECTOR_ICON default:nil.
2338
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   301
        i isNil ifTrue:[
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   302
            nm := resources at:#INSPECTOR_ICON_FILE default:'Inspector.xbm'.
2475
12068d713365 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2454
diff changeset
   303
            i := Smalltalk imageFromFileNamed:nm forClass:self.
2338
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   304
            i isNil ifTrue:[
2454
114111038a2b try my bitmaps in package directory
Claus Gittinger <cg@exept.de>
parents: 2447
diff changeset
   305
                i := StandardSystemView defaultIcon
2338
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   306
            ]
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   307
        ].
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   308
        i notNil ifTrue:[
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   309
            DefaultIcon := i := i onDevice:Display
0d791a4b518a #on: -> #onDevice:
Claus Gittinger <cg@exept.de>
parents: 2323
diff changeset
   310
        ]
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   311
    ].
1146
231ebb35a507 defaultIcon improved
Claus Gittinger <cg@exept.de>
parents: 1094
diff changeset
   312
    ^ i
874
9ec421cec441 use Image instead of Form
Claus Gittinger <cg@exept.de>
parents: 871
diff changeset
   313
7629
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   314
    "
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   315
       DefaultIcon := nil
48bf8de91618 Fix #defaultIcon
Stefan Vogel <sv@exept.de>
parents: 7626
diff changeset
   316
    "
7835
ba364068a743 icon resource
Claus Gittinger <cg@exept.de>
parents: 7808
diff changeset
   317
ba364068a743 icon resource
Claus Gittinger <cg@exept.de>
parents: 7808
diff changeset
   318
    "Modified: / 17-09-2007 / 11:36:17 / cg"
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   319
!
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   320
11247
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   321
defaultIntegerDisplayRadix
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   322
    ^ DefaultIntegerDisplayRadix ? 10
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   323
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   324
    "Created: / 10-02-2012 / 19:51:38 / cg"
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   325
!
992680ca31b0 added: #defaultIntegerDisplayRadix
Claus Gittinger <cg@exept.de>
parents: 11232
diff changeset
   326
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   327
defaultTopViewExtent
9389
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   328
    |def|
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   329
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   330
    def := LastExtent ? self defaultExtent.
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
   331
    ^ def min:(Screen current usableExtent)
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   332
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   333
    "Created: / 23-10-2007 / 19:04:13 / cg"
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   334
!
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   335
11230
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   336
expandArraysInAllLists
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   337
    "in the 'all instvars' list, expand arrays"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   338
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   339
    ^ ExpandArraysInAllLists ? false
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   340
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   341
    "Created: / 30-01-2012 / 16:52:57 / cg"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   342
!
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   343
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   344
expandArraysInAllLists:aBoolean
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   345
    "in the 'all instvars' list, expand arrays"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   346
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   347
    ExpandArraysInAllLists := aBoolean
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   348
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   349
    "Created: / 30-01-2012 / 16:53:01 / cg"
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   350
!
a29b30fcd694 class definition
Claus Gittinger <cg@exept.de>
parents: 11228
diff changeset
   351
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   352
rememberLastExtent:anExtent
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   353
    LastExtent := anExtent
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   354
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
   355
    "Created: / 23-10-2007 / 19:10:02 / cg"
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   356
! !
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   357
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   358
!InspectorView class methodsFor:'image specs'!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   359
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   360
imageFor_arrays
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   361
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   362
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   363
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   364
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   365
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   366
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   367
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   368
     self imageFor_arrays inspect
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   369
     ImageEditor openOnClass:self andSelector:#imageFor_arrays
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   370
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   371
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   372
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   373
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   374
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   375
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   376
        constantNamed:'InspectorView class imageFor_arrays'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   377
        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
   378
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOTUAPBU@IS0@@@@@@@@AOTP%PBUAQ
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   379
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
   380
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
   381
!
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   382
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   383
imageFor_characters
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   384
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   385
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   386
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   387
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   388
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   389
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   390
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   391
     self imageFor_characters inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   392
     ImageEditor openOnClass:self andSelector:#imageFor_characters
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   393
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   394
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   395
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   396
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   397
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   398
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   399
        constantNamed:'InspectorView class imageFor_characters'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   400
        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
   401
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTDIOC-FQ@@@@@@@@@A@MP$IBP$I
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   402
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
   403
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
   404
!
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
imageFor_classes
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   407
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   408
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   411
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   412
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
     self imageFor_classes inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   415
     ImageEditor openOnClass:self andSelector:#imageFor_classes
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   416
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   417
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   418
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   419
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   420
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   421
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   422
        constantNamed:'InspectorView class imageFor_classes'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   423
        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
   424
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MT 2M3\;
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   425
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
   426
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
   427
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   428
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   429
imageFor_collections
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   430
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   431
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   432
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   433
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   434
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   435
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   436
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   437
     self imageFor_collections inspect
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   438
     ImageEditor openOnClass:self andSelector:#imageFor_collections
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   439
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   440
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   441
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   442
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   443
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   444
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   445
        constantNamed:'InspectorView class imageFor_collections'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   446
        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
   447
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOBUAPTE@IS0@@@@@@@@AOBUAPTEAQ
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   448
T %O@@@@@@@@T0%PTEAPTUHIO0@@@@@@@EDITEAPTUIRBSD@@@@@@@AQBU@IT%DIO0$1@@@@@@@@T0%RT%IRO3DIO0@@@@@@@D<IT%IRLSEJBR<@@@@@@@@@
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   449
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
   450
!
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   451
11768
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   452
imageFor_colors
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   453
    "This resource specification was automatically generated
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   454
     by the ImageEditor of ST/X."
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   455
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   456
    "Do not manually edit this!! If it is corrupted,
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   457
     the ImageEditor may not be able to read the specification."
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   458
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   459
    "
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   460
     self imageFor_colors inspect
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   461
     ImageEditor openOnClass:self andSelector:#imageFor_colors
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   462
     Icon flushCachedIcons
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   463
    "
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   464
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   465
    <resource: #image>
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   466
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   467
    ^Icon
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   468
        constantNamed:'InspectorView imageFor_colors'
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   469
        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
   470
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
   471
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
   472
@@@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
   473
!
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
   474
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   475
imageFor_dictionaries
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   476
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   477
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   478
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   479
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   480
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   481
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   482
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   483
     self imageFor_dictionaries inspect
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   484
     ImageEditor openOnClass:self andSelector:#imageFor_dictionaries
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   485
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   486
    "
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   487
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   488
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   489
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   490
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   491
        constantNamed:'InspectorView class imageFor_dictionaries'
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   492
        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
   493
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOTUAPTEARS0@@@@@@@@AOTU@HTE@I
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   494
BEIO@@@@@@@@T5APBP!!PTUIRO0@@@@@@@EDIBP$I@P$HO3D@@@@@@@AQTUDIBEIRO3D1@@@@@@@@T5IRBEIRBP!!JO0@@@@@@@D=RT%H?LSEJR"<@@@@@@@@@
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   495
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
   496
!
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
   497
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   498
imageFor_false
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   499
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   500
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   501
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   502
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   503
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   504
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   505
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   506
     self imageFor_false inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   507
     ImageEditor openOnClass:self andSelector:#imageFor_false
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   508
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   509
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   510
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   511
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   512
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   513
    ^Icon
11548
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   514
        constantNamed:'InspectorView imageFor_false'
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   515
        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
   516
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@ LC@ D@@@@@@@@@@@@DAPXFA0 IA@@@@@@@@@@JB0XLC@0L
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   517
CP8J@@@@@@@@@ XOCA@PDA@QD @@@@@@@@LGC00PD1PNEQX@@@@@@@@CE1 LC@0MEQ$V@@@@@@@@@!!PTCA@PDAXZF0@@@@@@@@(QC 0PGA$]F!!8@@@@@@@@@
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   518
G10LDA(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]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   519
!
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
imageFor_floats
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   522
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   523
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   526
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   527
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
     self imageFor_floats inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   530
     ImageEditor openOnClass:self andSelector:#imageFor_floats
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   531
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   532
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   533
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   534
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   535
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   536
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   537
        constantNamed:'InspectorView class imageFor_floats'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   538
        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
   539
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MT 2BS\;
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   540
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
   541
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
   542
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   543
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   544
imageFor_fractions
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   545
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   546
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   547
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   548
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   549
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   550
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   551
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   552
     self imageFor_fractions inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   553
     ImageEditor openOnClass:self andSelector:#imageFor_fractions
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   554
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   555
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   556
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   557
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   558
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   559
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   560
        constantNamed:'InspectorView class imageFor_fractions'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   561
        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
   562
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEABS-FQ@@@@@@@@@A@MSH2BP$7
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   563
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
   564
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
   565
!
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
imageFor_integers
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   568
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   569
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   572
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   573
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
     self imageFor_integers inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   576
     ImageEditor openOnClass:self andSelector:#imageFor_integers
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   577
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   578
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   579
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   580
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   581
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   582
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   583
        constantNamed:'InspectorView class imageFor_integers'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   584
        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
   585
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MT 2BS\;
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
   586
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
   587
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
   588
!
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
imageFor_nil
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   591
    ^ self imageFor_nil2
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   592
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   593
    "Modified: / 21-11-2012 / 14:24:21 / cg"
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   594
!
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   595
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   596
imageFor_nil1
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   597
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   598
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   599
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   600
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   601
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   602
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   603
    "
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   604
     self imageFor_nil1 inspect
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   605
     ImageEditor openOnClass:self andSelector:#imageFor_nil1
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   606
     Icon flushCachedIcons
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
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   610
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   611
    ^Icon
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   612
        constantNamed:'InspectorView imageFor_nil1'
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   613
        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
   614
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@KEP4MEP,@@@@@@@@@@@@GEA$YAP4OA0@@@@@@@@@JEA$WF!!HM
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   615
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
   616
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
   617
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   618
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   619
imageFor_nil2
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   620
    "This resource specification was automatically generated
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   621
     by the ImageEditor of ST/X."
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   622
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   623
    "Do not manually edit this!! If it is corrupted,
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   624
     the ImageEditor may not be able to read the specification."
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   625
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   626
    "
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   627
     self imageFor_nil2 inspect
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   628
     ImageEditor openOnClass:self andSelector:#imageFor_nil2
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   629
     Icon flushCachedIcons
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   630
    "
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   631
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   632
    <resource: #image>
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   633
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   634
    ^Icon
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   635
        constantNamed:'InspectorView imageFor_nil2'
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   636
        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   637
"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"G]7]8"H"H"GQDP3BH"H"GQCL3NP"H"H]CL3L6BH"H!!4L3L3TH"H"GP3L3L "H"H\3L3M1BH"H!!3L3M:DH"H"H
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   638
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]; 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: 12031
diff changeset
   639
!
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   640
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   641
imageFor_others
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   642
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   643
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   646
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   647
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   648
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   649
     self imageFor_others inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   650
     ImageEditor openOnClass:self andSelector:#imageFor_others
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   651
     Icon flushCachedIcons
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
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   654
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   655
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   656
    ^Icon
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   657
        constantNamed:'InspectorView imageFor_others'
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   658
        ifAbsentPut:[(Depth4Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[4]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   659
H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H#L3L2H"H"H#&Y%U@"H"H#&U=WV0H"H"NU=WUK@"H"H9=WUE,BH"H#%VVES H"H"MTTU =@"H"H5TUD:4BH"H"
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
   660
B*3]4BH"H"H @@@BH"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"H"Hb') ; colorMapFromArray:#[0 0 0 168 174 0 228 226 230 144 132 130 188 190 0 240 240 240 220 222 0 228 232 0 176 182 0 255 255 255 108 108 0 152 156 0 88 90 0 76 74 0 96 100 0 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]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   661
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   662
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   663
imageFor_sequenceableCollections
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   664
    "This resource specification was automatically generated
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   665
     by the ImageEditor of ST/X."
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   666
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   667
    "Do not manually edit this!! If it is corrupted,
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   668
     the ImageEditor may not be able to read the specification."
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   669
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   670
    "
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   671
     self imageFor_sequenceableCollections inspect
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   672
     ImageEditor openOnClass:self andSelector:#imageFor_sequenceableCollections
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   673
     Icon flushCachedIcons
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   674
    "
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   675
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   676
    <resource: #image>
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   677
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   678
    ^Icon
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   679
        constantNamed:'InspectorView class imageFor_sequenceableCollections'
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   680
        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
   681
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@A@T5EQT4@@@@@@@@@@@@AOTUAPTEARS0@@@@@@@@AOTUAPTE@I
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   682
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
   683
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
   684
!
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
   685
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   686
imageFor_strings
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   687
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   688
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   689
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   690
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   691
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   692
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   693
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   694
     self imageFor_strings inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   695
     ImageEditor openOnClass:self andSelector:#imageFor_strings
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   696
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   697
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   698
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   699
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   700
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   701
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   702
        constantNamed:'InspectorView class imageFor_strings'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   703
        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
   704
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MTDIM5LI
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   705
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
   706
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
   707
!
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
imageFor_symbols
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   710
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   711
     by the ImageEditor of ST/X."
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
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   714
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   715
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
     self imageFor_symbols inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   718
     ImageEditor openOnClass:self andSelector:#imageFor_symbols
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   719
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   720
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   721
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   722
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   723
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   724
    ^Icon
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   725
        constantNamed:'InspectorView class imageFor_symbols'
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   726
        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
   727
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@6LD5MLCX@@@@@@@@@@@ADRTEAOC-FQ@@@@@@@@@A@MTDIM5LI
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   728
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
   729
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
   730
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   731
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   732
imageFor_true
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   733
    "This resource specification was automatically generated
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   734
     by the ImageEditor of ST/X."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   735
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   736
    "Do not manually edit this!! If it is corrupted,
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   737
     the ImageEditor may not be able to read the specification."
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   738
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   739
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   740
     self imageFor_true inspect
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   741
     ImageEditor openOnClass:self andSelector:#imageFor_true
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   742
     Icon flushCachedIcons
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   743
    "
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   744
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   745
    <resource: #image>
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   746
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   747
    ^Icon
11548
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   748
        constantNamed:'InspectorView imageFor_true'
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   749
        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
   750
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@(MB@ MB @@@@@@@@@@@@:K#@0F2(\N @@@@@@@@@-H0$IBP$I
11548
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   751
A18-@@@@@@@@MC@GI@$$IBP9HP@@@@@@@B@[J3DIIB0^K3 @@@@@@@@ MRT5BRP^K1<8@@@@@@@@MB0,I $$K2\"JP@@@@@@@B49G#$IIA<]H#H@@@@@@@@@
9eab7ffc6c78 changed:
Claus Gittinger <cg@exept.de>
parents: 11547
diff changeset
   752
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]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   753
! !
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
   754
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   755
!InspectorView class methodsFor:'queries-plugin'!
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   756
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   757
aspectSelectors
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   758
    ^ #( inspectedObjectHolder )
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   759
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   760
    "Modified: / 10.2.2000 / 12:25:28 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   761
! !
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   762
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   763
!InspectorView methodsFor:'accessing'!
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   764
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   765
allowFollow:aBoolean
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   766
    "enable/disable the follow menu item;
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   767
     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
   768
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   769
    allowFollow := aBoolean
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   770
!
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   771
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   772
dereferenceValueHolders:aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   773
    dereferenceValueHolders := aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   774
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   775
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   776
fieldListLabel:aString
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   777
    labelView label:aString
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   778
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   779
    "Created: 28.6.1996 / 15:30:26 / cg"
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   780
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   781
9630
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   782
headLineLabel:aString
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   783
    "an alternative headline label (if used as embedded inspector)"
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   784
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   785
    headLineLabel := aString.
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   786
9648
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   787
    labelView notNil ifTrue:[
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   788
        labelView label:headLineLabel.
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   789
    ].
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   790
bf870042cb9f changed: #headLineLabel:
Claus Gittinger <cg@exept.de>
parents: 9637
diff changeset
   791
    "Modified: / 25-11-2010 / 17:16:45 / cg"
9630
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   792
!
72d3d048a53e headLineLabel
Claus Gittinger <cg@exept.de>
parents: 9625
diff changeset
   793
9693
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   794
headLineLabelView
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   795
    "provides access to the headline"
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   796
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   797
    ^ labelView
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   798
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   799
    "Created: / 21-01-2011 / 12:07:13 / cg"
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   800
!
Claus Gittinger <cg@exept.de>
parents: 9690
diff changeset
   801
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   802
hideReceiver:aBoolean
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
   803
    "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
   804
     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
   805
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   806
    hideReceiver := aBoolean
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   807
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   808
    "Created: 28.6.1996 / 15:08:32 / cg"
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   809
!
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   810
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   811
inspect:anObject
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   812
    "set/update the object to be inspected"
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   813
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   814
    |keepList fieldNameList sameObject sameClass oldSelectedField idx|
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   815
9690
5682d804727a changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9672
diff changeset
   816
    "/ (anObject isNil and:[object isNil]) ifTrue:[^ self].
9651
cca26b954d45 changed:
Claus Gittinger <cg@exept.de>
parents: 9648
diff changeset
   817
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   818
    sameObject := (anObject == object) and:[object notNil].
10520
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   819
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   820
    "/ 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
   821
    "/ so instances of same class may have different number of slots!!
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   822
    "/ (caused problems expecially when stack inspector is shown in debugger).
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   823
    "/ To fix, I've added ------------------------v
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   824
    sameClass := (anObject class == object class) and:[anObject class isVariable not].
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   825
    selectionIndex notNil ifTrue:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   826
        oldSelectedField := (listView list ? #()) at:selectionIndex ifAbsent:nil.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   827
    ].
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   828
    inspectedObject := object := anObject.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   829
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   830
    keepList := ((sameObject | sameClass) and:[listView list notEmptyOrNil]).
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   831
    "/ assume that the list remains unchanged;
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   832
    "/ 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
   833
    UserPreferences current showTypeIndicatorInInspector ifTrue:[
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   834
        keepList := false.
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   835
    ].
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   836
    keepList ifFalse:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   837
        hasMore := false.
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   838
        fieldNameList := self fieldList.                               
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   839
        hasMore ifTrue:[
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   840
            fieldNameList add:' ... '
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   841
        ].
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   842
        listView contents:fieldNameList.
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   843
        workspace contents:nil.
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   844
        self setDoItAction.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   845
    ].
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   846
    sameClass ifFalse:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   847
        selectionIndex := selectedLine := nil.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   848
    ].
9262
792dbfa38baf changed:
Stefan Vogel <sv@exept.de>
parents: 9032
diff changeset
   849
    isStandaloneInspector ifTrue:[
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   850
        "/ not embedded (as in the debugger)
2284
0f4ee9b43468 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   851
        self topView 
0f4ee9b43468 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2275
diff changeset
   852
            label:(self labelFor:anObject);
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
   853
            iconLabel:(self class labelNameFor:anObject).
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   854
    ].
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   855
        
9390
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   856
    (sameObject | sameClass) ifFalse:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   857
        idx := (listView list ? #()) indexOf:oldSelectedField.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   858
        idx ~~ 0 ifTrue:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   859
            listView selection:idx
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   860
        ] ifFalse:[
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   861
            self setInitialSelection.
a18badc9f912 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9389
diff changeset
   862
        ]
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
   863
    ].
10520
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   864
    self showSelection:((selectedLine ? 1) min: listView list size)
9624
defa4a2d2a10 changed: #inspect:
Claus Gittinger <cg@exept.de>
parents: 9615
diff changeset
   865
10520
f15aa3e05329 Fix for variable-length classes in #inspect:
vrany
parents: 10436
diff changeset
   866
    "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
   867
    "Modified: / 02-06-2012 / 13:06:59 / cg"
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   868
!
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   869
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
   870
isStandaloneInspector:aBoolean
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   871
    "obsolete now"
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
   872
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
   873
    isStandaloneInspector := aBoolean
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
   874
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
   875
    "Modified: / 12.2.1999 / 16:01:44 / cg"
29
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   876
!
8a72e10043f6 *** empty log message ***
claus
parents: 23
diff changeset
   877
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   878
label:aString
4106
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
   879
    "set the fieldListLabel - obsolete; collides with inherited label-functionality"
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
   880
5845
c7a4a4cd352b Mark obsolete methods
Stefan Vogel <sv@exept.de>
parents: 5698
diff changeset
   881
    <resource:#obsolete>
4106
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
   882
    self obsoleteMethodWarning:'use fieldListLabel:'.
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
   883
    self fieldListLabel:aString.
1222d4e1166e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4095
diff changeset
   884
    super label:aString.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   885
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   886
    "Created: 28.6.1996 / 15:30:26 / cg"
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   887
!
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
   888
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   889
listView
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
   890
    ^ listView
352
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
   891
!
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
   892
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   893
reinspect
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   894
    "update display for a changed inspectedObject"
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   895
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   896
    |aList|
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   897
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   898
    hasMore := false.
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   899
    aList := self fieldList.
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   900
    hasMore ifTrue:[
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   901
        aList add:' ... '
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   902
    ].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   903
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   904
    listView contents:aList.
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   905
    self setDoItAction.
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
   906
    selectionIndex := selectedLine := nil
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   907
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
   908
    "Modified (comment): / 02-06-2012 / 13:08:15 / cg"
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   909
!
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
   910
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
   911
suppressHeadline:aBoolean
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
   912
    "hide/show the title line above the list/value"
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
   913
9736
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   914
    suppressHeadline := aBoolean.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   915
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   916
    labelView notNil ifTrue:[
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   917
        suppressHeadline == true ifTrue:[
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   918
            labelView beInvisible.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   919
            listView container topInset:0.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   920
            workspace container topInset:0.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   921
        ] ifFalse:[
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   922
            labelView beVisible.
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   923
            listView container topInset:(labelView preferredHeight).
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   924
            workspace container topInset:(labelView preferredHeight).
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   925
        ].
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   926
    ].
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
   927
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
   928
    "Created: / 09-11-2010 / 14:50:04 / cg"
9736
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
   929
    "Modified: / 05-02-2011 / 14:03:55 / cg"
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
   930
!
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
   931
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   932
suppressPseudoSlots:aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   933
    suppressPseudoSlots := aBoolean
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   934
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
   935
352
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
   936
workspace
e84b6352735d set focusSequence
Claus Gittinger <cg@exept.de>
parents: 351
diff changeset
   937
    ^ workspace
52
7b48409ae088 *** empty log message ***
claus
parents: 49
diff changeset
   938
! !
7b48409ae088 *** empty log message ***
claus
parents: 49
diff changeset
   939
2724
ca96b304e992 category changes
Claus Gittinger <cg@exept.de>
parents: 2657
diff changeset
   940
!InspectorView methodsFor:'accessing-channels'!
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   941
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   942
inspectedObjectHolder
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   943
    inspectedObjectHolder isNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   944
        inspectedObjectHolder := ValueHolder new.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   945
        inspectedObjectHolder addDependent:self.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   946
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   947
    ^ inspectedObjectHolder
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   948
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   949
    "Created: / 10.2.2000 / 13:33:16 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   950
    "Modified: / 10.2.2000 / 13:34:23 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   951
!
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   952
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   953
inspectedObjectHolder:aValueHolder
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   954
    inspectedObjectHolder notNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   955
        inspectedObjectHolder removeDependent:self.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   956
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   957
    inspectedObjectHolder := aValueHolder.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   958
    inspectedObjectHolder notNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   959
        inspectedObjectHolder addDependent:self.
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   960
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   961
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   962
    "Created: / 10.2.2000 / 13:34:53 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   963
! !
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   964
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   965
!InspectorView methodsFor:'change & update'!
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   966
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   967
update:something with:aParameter from:changedObject
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   968
    "Invoked when one of my dependees sends a change notification."
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   969
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   970
    |oldSelection|
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   971
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
   972
    changedObject == object ifTrue:[
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   973
        oldSelection := listView selection.
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
   974
        self inspect:object.
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   975
        oldSelection notNil ifTrue:[
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   976
            self showSelection:oldSelection
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   977
        ]
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   978
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   979
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
   980
    changedObject == object ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
   981
        self inspect:(object value)
2598
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   982
    ].
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   983
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   984
    super update:something with:aParameter from:changedObject
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   985
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   986
    "Created: / 10.2.2000 / 13:46:38 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   987
    "Modified: / 10.2.2000 / 13:48:18 / cg"
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   988
! !
298843749a49 inspectedObjectHolder added
Claus Gittinger <cg@exept.de>
parents: 2587
diff changeset
   989
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   990
!InspectorView methodsFor:'drag & drop'!
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   991
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   992
getDisplayObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   993
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   994
    ^List with:self selection printString
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   995
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   996
    "Created: / 16-08-2005 / 21:54:52 / janfrog"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   997
    "Modified: / 18-09-2006 / 21:11:16 / cg"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   998
!
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
   999
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1000
getDropObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1001
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1002
    ^List with:(DropObject new:self selection).
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1003
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1004
    "Created: / 16-08-2005 / 21:49:23 / janfrog"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1005
    "Modified: / 18-09-2006 / 21:11:31 / cg"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1006
! !
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1007
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1008
!InspectorView methodsFor:'event handling'!
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1009
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1010
doubleClickOnLine:lineNr
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1011
    |objectToInspect app|
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1012
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1013
    objectToInspect := self selectedField.
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1014
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1015
    "HACK"
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1016
    app := (self topView perform:#application ifNotUnderstood: [nil]).
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1017
    (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
  1018
        app inspect: objectToInspect
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1019
    ] ifFalse:[
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1020
        objectToInspect inspect
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1021
    ]
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1022
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1023
    "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
  1024
!
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1025
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1026
keyPress:key x:x y:y
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1027
    "handle special keys"
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1028
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1029
    <resource: #keyboard (#BrowseIt #InspectIt)>
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1030
12031
d36e19c23f23 changed: #keyPress:x:y:
Claus Gittinger <cg@exept.de>
parents: 11946
diff changeset
  1031
    self theSingleSelectionIndex "selection" notNil ifTrue:[
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1032
        (key == #BrowseIt) ifTrue:[
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1033
            self browse.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1034
            ^ self.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1035
        ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1036
        (key == #InspectIt) ifTrue:[
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1037
            self doInspect.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1038
            ^ self.
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1039
        ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1040
    ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1041
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1042
    "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
  1043
    x notNil ifTrue:[
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1044
        "/ not already delegated
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1045
        workspace keyPress:key x:-1 y:-1
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1046
    ].
9389
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1047
!
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1048
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1049
selectedField
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1050
    ^ self theSingleSelectionIndex isNil 
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1051
                            ifTrue:[object] 
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1052
                            ifFalse:[self selection].
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1053
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1054
    "Created: / 27-07-2012 / 22:42:23 / cg"
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1055
!
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1056
9389
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1057
sizeChanged:how
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1058
    super sizeChanged:how.
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1059
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1060
    isStandaloneInspector == true ifTrue:[
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1061
        LastExtent := self topView extent.
f7ad2b69030f better tracking of sizeChange for default size.
sr
parents: 9384
diff changeset
  1062
    ].
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1063
! !
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  1064
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  1065
!InspectorView methodsFor:'initialization & release'!
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1066
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1067
destroy
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1068
    (self topView objectAttributeAt:#rememberExtent) == true ifTrue:[
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1069
        self class rememberLastExtent:(self topView extent).
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1070
    ].
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1071
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1072
    inspectedObject := object := nil.
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1073
    monitorProcess notNil ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1074
        monitorProcess terminate
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1075
    ].
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1076
    super destroy
7867
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1077
3d405157be72 default size
Claus Gittinger <cg@exept.de>
parents: 7835
diff changeset
  1078
    "Modified: / 23-10-2007 / 19:11:04 / cg"
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1079
!
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1080
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1081
initialize
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1082
    |v panel helpView labelView2|
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1083
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1084
    super initialize.
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1085
3318
46c3347385f4 preps to allow for displayString message to be configured
Claus Gittinger <cg@exept.de>
parents: 3199
diff changeset
  1086
    displayStringMessage := #displayString.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1087
    hideReceiver := false.
10846
75970cbe22b1 class definition
Claus Gittinger <cg@exept.de>
parents: 10521
diff changeset
  1088
    integerDisplayRadix := (DefaultIntegerDisplayRadix ? 10).
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1089
    sortOrder := #instvarOrder.
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1090
    allowFollow := false.
2008
52bf8b8afd3b separated allowFollow from isStandAlone flag
Claus Gittinger <cg@exept.de>
parents: 2007
diff changeset
  1091
    isStandaloneInspector := false.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1092
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1093
    panel := VariableHorizontalPanel 
1991
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1094
                origin:(0.0 @ 0.0)
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1095
                corner:(1.0 @ 1.0)
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1096
                in:self.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1097
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1098
    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
  1099
    helpView level:0; borderWidth:0.
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1100
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1101
    suppressHeadline == true ifFalse:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1102
        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
  1103
        labelView label:(headLineLabel ? self defaultLabel).
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1104
        labelView bottomInset:(labelView preferredHeight negated).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1105
    ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1106
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1107
    v := HVScrollableView 
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1108
            for:SelectionInListView 
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1109
            miniScrollerH:true
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1110
            miniScrollerV:false
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1111
            in:helpView.
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1112
    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
  1113
    labelView notNil ifTrue:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1114
        v topInset:(labelView preferredHeight).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1115
    ].
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1116
1991
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1117
"/    v autoHideScrollBars:true.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1118
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1119
    listView := v scrolledView.
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  1120
    listView action:[:lineNr | self selection:lineNr.].
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  1121
    listView doubleClickAction:[:lineNr | self doubleClickOnLine:lineNr].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1122
    listView ignoreReselect:false.
98
claus
parents: 93
diff changeset
  1123
    listView menuHolder:self; menuPerformer:self; menuMessage:#fieldMenu.
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1124
    self initializeDragAndDrop.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1125
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1126
    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
  1127
    helpView level:0; borderWidth:0.
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1128
9625
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1129
    suppressHeadline == true ifFalse:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1130
        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
  1131
        labelView2 label:''.
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1132
        labelView2 bottomInset:(labelView preferredHeight negated).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1133
    ].
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1134
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1135
    v := HVScrollableView 
1991
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1136
                for:CodeView 
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1137
                miniScrollerH:true
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1138
                miniScrollerV:false
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1139
                in:helpView.
dfbb30988edd no miniScrollers; no autoHide
Claus Gittinger <cg@exept.de>
parents: 1930
diff changeset
  1140
"/    v autoHideScrollBars:true.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1141
    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
  1142
    labelView2 notNil ifTrue:[
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1143
        v topInset:(labelView2 preferredHeight).
1b6c049c1990 allow suppressing the headline
Claus Gittinger <cg@exept.de>
parents: 9624
diff changeset
  1144
    ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1145
    workspace := v scrolledView.
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1146
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  1147
    self setAcceptAction.
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1148
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1149
    nShown := 100.
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1150
    hasMore := false.
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  1151
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1152
    "Modified: / 16-08-2005 / 21:54:04 / janfrog"
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1153
    "Modified: / 20-07-2012 / 10:48:34 / cg"
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1154
!
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1155
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1156
initializeDragAndDrop
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1157
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1158
    | source |
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1159
    source := DropSource 
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1160
                    receiver:self
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1161
                    argument:nil
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1162
                    dropObjectSelector:#getDropObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1163
                    displayObjectSelector:#getDisplayObjects
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1164
                    dropFeedBackSelector:nil.
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1165
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1166
    listView dropSource:source.
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1167
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1168
    "Created: / 16-08-2005 / 21:51:43 / janfrog"
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  1169
    "Modified: / 18-09-2006 / 21:13:05 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1170
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1171
593
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1172
realize
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1173
    "delayed setup of lists till first map-time - 
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1174
     this makes startup of inspectors a bit faster"
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1175
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1176
    |o|
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  1177
593
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1178
    super realize.
7887
be186ae12782 dont clobber the current selection on realize
Claus Gittinger <cg@exept.de>
parents: 7867
diff changeset
  1179
    "/ cg: I dont remember what this was needed for (is it still?)
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1180
    false "object notNil" ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1181
        "
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1182
         kludge to trick inspect:, which ignores setting the
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1183
         same object again ...
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1184
        "
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1185
        o := object.
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1186
        inspectedObject := object := nil.
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1187
        self inspect:o
383
e5760d864242 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 352
diff changeset
  1188
    ]
593
6bc83313d7ff checkin from browser
Claus Gittinger <cg@exept.de>
parents: 570
diff changeset
  1189
7887
be186ae12782 dont clobber the current selection on realize
Claus Gittinger <cg@exept.de>
parents: 7867
diff changeset
  1190
    "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
  1191
    "Modified: / 05-11-2007 / 20:11:44 / cg"
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1192
!
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1193
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1194
release
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1195
    "release inpected object. This is normally not needed,
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1196
     since the garbage collector will find this memory alone.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1197
     However, if some applications keeps invisible inspectors around
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1198
     (for example, the debugger does this), the inspected object
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1199
     would be kept from being freed or freed very late."
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1200
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1201
"
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1202
    inspectedObject notNil ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1203
        inspectedObject removeDependent:self
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1204
    ].
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1205
"
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1206
    inspectedObject := object := nil.
2117
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1207
    self setDoItAction.      "/ to release ref to inspectedObject in doItBlock
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1208
    workspace contents:nil.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1209
    listView contents:nil.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1210
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1211
    super release.
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1212
dd96b2478eeb category change
Claus Gittinger <cg@exept.de>
parents: 2085
diff changeset
  1213
    "Modified: 11.6.1997 / 13:20:39 / cg"
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1214
!
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1215
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1216
setInitialSelection
8868
1fd94adeda59 changed: #setInitialSelection
Claus Gittinger <cg@exept.de>
parents: 8800
diff changeset
  1217
    object isLazyValue ifFalse:[
1fd94adeda59 changed: #setInitialSelection
Claus Gittinger <cg@exept.de>
parents: 8800
diff changeset
  1218
        object isString ifTrue:[
1fd94adeda59 changed: #setInitialSelection
Claus Gittinger <cg@exept.de>
parents: 8800
diff changeset
  1219
            self showSelection:1    "/ the self-line    
1fd94adeda59 changed: #setInitialSelection
Claus Gittinger <cg@exept.de>
parents: 8800
diff changeset
  1220
        ]
8452
0840b314f7bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8388
diff changeset
  1221
    ].
98
claus
parents: 93
diff changeset
  1222
! !
claus
parents: 93
diff changeset
  1223
claus
parents: 93
diff changeset
  1224
!InspectorView methodsFor:'menu'!
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1225
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1226
fieldMenu
1040
5835207bcb3e menu resource
Claus Gittinger <cg@exept.de>
parents: 901
diff changeset
  1227
    "return the menu for the field-list"
5835207bcb3e menu resource
Claus Gittinger <cg@exept.de>
parents: 901
diff changeset
  1228
1235
13610578a5d2 resource flag: #menu -> #programMenu
Claus Gittinger <cg@exept.de>
parents: 1185
diff changeset
  1229
    <resource: #programMenu>
1040
5835207bcb3e menu resource
Claus Gittinger <cg@exept.de>
parents: 901
diff changeset
  1230
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1231
    |items m sel protocolMenu localProtocolMenu 
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1232
     protocols protocolsSorted
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1233
     selectorsByFirstCharacter alphaMenu
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1234
     localSelectors|
1597
48629e1fc7b6 use new menu-creation message in PopUpMenu.
Claus Gittinger <cg@exept.de>
parents: 1570
diff changeset
  1235
48629e1fc7b6 use new menu-creation message in PopUpMenu.
Claus Gittinger <cg@exept.de>
parents: 1570
diff changeset
  1236
    items := #(
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1237
                       ('Copy Name or Key'             #doCopyKey              )
2085
ec4daf11d3b6 added #copyKey - menu item
Claus Gittinger <cg@exept.de>
parents: 2008
diff changeset
  1238
                       ('-')
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1239
                       ('Inspect'                      #doInspect              )
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1240
                       ('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
  1241
             ).
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1242
    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
  1243
        items := items , #(
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1244
                       ('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
  1245
                ).
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1246
    ].
e6d367cbe86c do not show new-inspector in menu, if there is none loaded
Claus Gittinger <cg@exept.de>
parents: 9316
diff changeset
  1247
    items := items , #(
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1248
                       ('Browse'                       #browse                 )
8800
ab79a72dfdec changed: #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 8799
diff changeset
  1249
             ).
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1250
    items := items , (self optionalToolItems).
8800
ab79a72dfdec changed: #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 8799
diff changeset
  1251
    items := items , (self optionalViewSelectionItems).
ab79a72dfdec changed: #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 8799
diff changeset
  1252
    items := items , #(
7951
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1253
                       ('-') 
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1254
                       ('Owners'                       #showOwners             )  
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1255
                       ('Ref Chains'                   #showReferences         )
3199
5478ca0ac71f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3198
diff changeset
  1256
"/                       ('Browse class hierarchy'       #browseClassHierarchy   )
5478ca0ac71f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3198
diff changeset
  1257
"/                       ('Browse full class protocol'   #browseFullClassProtocol)
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1258
              ).
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  1259
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  1260
    sel := self selection.
6491
d02c41c57d02 better menu
Claus Gittinger <cg@exept.de>
parents: 6372
diff changeset
  1261
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1262
    items := items , (self optionalMethodOrBlockSelectionItems).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1263
    items := items , (self optionalStreamSelectionItems).
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1264
    items := items , (self optionalFilenameSelectionItems).
9700
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1265
    items := items , (self optionalByteArraySelectionItems).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1266
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1267
    items := items , #(
2085
ec4daf11d3b6 added #copyKey - menu item
Claus Gittinger <cg@exept.de>
parents: 2008
diff changeset
  1268
                       ('-')
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1269
                       ('Local Protocol'               #localProtocolMenu      )
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1270
                       ('Full Protocol'                #protocolMenu           )
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1271
                       ('-')
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1272
                       ('Trap Message...'              #doTrap                 )
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1273
                       ('Trap all Messages'            #doTrapAll              )
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1274
                       ('Trace all Messages'           #doTraceAll             )
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1275
                       ('Untrace/Untrap'               #doUntrace              )
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1276
"/                       ('-')
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1277
"/                       ('Trap change to instVar'       #doTrapInstVarChange    )
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1278
"/                       ('Trap change to any instVar'   #doTrapAnyInstVarChange )
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1279
              ).
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1280
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1281
    allowFollow ifTrue:[
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1282
        items := #(
3198
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1283
                            ('Follow'                       #doFollow              )
1c34cd12b80b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3164
diff changeset
  1284
                            ('Back'                         #doBack              )
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1285
                            ('-')
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1286
                  )
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1287
                 ,
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1288
                 items.
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1289
    ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1290
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1291
    monitorProcess isNil ifTrue:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1292
        items := items , #(
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1293
                        ('Start Monitor'                #doStartMonitor         )
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1294
                          ).
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1295
    ] ifFalse:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1296
        items := items , #(
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1297
                        ('Stop Monitor'                #doStopMonitor           )
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1298
                          ).
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1299
    ].
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1300
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1301
    hasMore ifTrue:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1302
        items := items , #(
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1303
                        ('-')
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1304
                        ('Show More'                    #showMore               )
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1305
                          ).
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  1306
        (self numIndexedFields > (nShown * 2)) ifTrue:[
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1307
            items := items , #(
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1308
                        ('Show All'                     #showAll                )
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1309
                          )
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1310
        ].
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1311
    ].
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  1312
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1313
    protocols := Dictionary new.
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1314
    selectorsByFirstCharacter := Dictionary new.
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1315
    object class withAllSuperclassesDo:[:eachClass |
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1316
        eachClass methodDictionary keysAndValuesDo:[:sel :m |
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1317
            sel numArgs == 0 ifTrue:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1318
                (protocols at:m category ifAbsentPut:[Set new]) add:sel.
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1319
                (selectorsByFirstCharacter at:(sel first asString) ifAbsentPut:[Set new]) add:sel.
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1320
            ]
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1321
        ].
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1322
    ].
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1323
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1324
    protocolsSorted := protocols keys asArray sort.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1325
    protocolMenu := PopUpMenu
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1326
                        labels:#('alphabetical' '=') , protocolsSorted
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1327
                        selectors:#(nil nil) , protocolsSorted.
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1328
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1329
    protocolMenu 
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1330
        subMenuAt:'alphabetical'
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1331
        put:[
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1332
            |firstChars|
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1333
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1334
            firstChars := selectorsByFirstCharacter keys asOrderedCollection sort.
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1335
            alphaMenu := PopUpMenu
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1336
                               labels:firstChars
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1337
                               selector:#mmm 
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1338
                               args:firstChars
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1339
                               receiver:self.
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1340
            firstChars do:[:ch |
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1341
                alphaMenu
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1342
                    subMenuAt:ch
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1343
                    put:[
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1344
                        |selectors sortedSelectors|
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1345
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1346
                        selectors := selectorsByFirstCharacter at:ch.
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1347
                        sortedSelectors := selectors asArray sort.
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1348
                        protocolMenu := PopUpMenu
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1349
                                            labels:sortedSelectors
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1350
                                            selector:#letSelectedObjectPerform: 
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1351
                                            args:sortedSelectors
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1352
                                            receiver:self.
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1353
                    ]
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1354
            ].
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1355
            alphaMenu
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1356
        ].
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1357
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1358
    protocolsSorted do:[:p |
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1359
        protocolMenu 
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1360
            subMenuAt:p 
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1361
            put:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1362
                |selectors sortedSelectors|
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1363
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1364
                selectors := protocols at:p.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1365
                sortedSelectors := selectors asArray sort.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1366
                protocolMenu := PopUpMenu
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1367
                                    labels:sortedSelectors
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1368
                                    selector:#letSelectedObjectPerform: 
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1369
                                    args:sortedSelectors
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1370
                                    receiver:self.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1371
            ]
93
claus
parents: 80
diff changeset
  1372
    ].
claus
parents: 80
diff changeset
  1373
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1374
    localSelectors := object class methodDictionary keys asArray sort.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1375
    localProtocolMenu := PopUpMenu
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1376
                        labels:localSelectors
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1377
                        selector:#letSelectedObjectPerform: 
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1378
                        args:localSelectors
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1379
                        receiver:self.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1380
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1381
    items := items , (self sortOrderItems).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1382
    items := items , (self numberBaseItems).
1634
216a4254e634 added 'hex integers' toggle to menu.
Claus Gittinger <cg@exept.de>
parents: 1597
diff changeset
  1383
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1384
    m := PopUpMenu
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1385
          itemList:items
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1386
          resources:resources.
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1387
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1388
    m subMenuAt:#protocolMenu put:protocolMenu.
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1389
    m subMenuAt:#localProtocolMenu put:localProtocolMenu.
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1390
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1391
    (self theSingleSelectionIndex isNil) ifTrue:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1392
        m disableAll:#(doFollow doInspect doBasicInspect doNewInspect
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1393
                       browse browseClassHierarchy browseFullClassProtocol
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  1394
                       doStartMonitor doCopyKey doCopyKey)
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1395
    ].
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1396
    (self hasSelfEntry and:[selectionIndex == 1]) ifTrue:[
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1397
        m disableAll:#(doFollow doCopyKey "doInspect doBasicInspect")
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1398
    ].
7975
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1399
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1400
    inspectHistory size == 0 ifTrue:[
2007
cd423a740a14 renamed instance variable.
Claus Gittinger <cg@exept.de>
parents: 1991
diff changeset
  1401
        m disable:#doBack
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1402
    ].
6491
d02c41c57d02 better menu
Claus Gittinger <cg@exept.de>
parents: 6372
diff changeset
  1403
    sel class hasImmediateInstances ifTrue:[
2580
d0c284a14c9c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2579
diff changeset
  1404
        m disableAll:#(showReferences doNewInspect)
d0c284a14c9c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2579
diff changeset
  1405
    ].
8616
51d6f6c57f14 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8452
diff changeset
  1406
"/    sel inspectorClass == self class ifFalse:[
51d6f6c57f14 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8452
diff changeset
  1407
"/        m disable:#doFollow
51d6f6c57f14 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8452
diff changeset
  1408
"/    ].
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1409
    sel isMethod ifFalse:[
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1410
        m disable:#browseMethodsClass
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1411
    ].
3199
5478ca0ac71f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3198
diff changeset
  1412
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1413
    ^ m
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1414
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1415
    "Modified: / 20-07-2012 / 10:50:45 / cg"
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1416
!
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1417
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1418
numberBaseItems
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1419
    ^ {
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1420
        #('-') .
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1421
        (integerDisplayRadix == 10) 
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1422
            ifFalse:[ #('Decimal Integers'  #setDisplayRadixTo10  ) ] .
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1423
        (integerDisplayRadix == 2) 
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1424
            ifFalse:[ #('Binary Integers'  #setDisplayRadixTo2    ) ] .
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1425
        (integerDisplayRadix == 16) 
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1426
            ifFalse:[ #('Hex Integers'  #setDisplayRadixTo16      ) ] .
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1427
      } select:[:el | el notNil].
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1428
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  1429
    "Modified: / 24-08-2010 / 17:31:51 / cg"
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1430
!
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1431
9700
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1432
optionalByteArraySelectionItems
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1433
    |sel|
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1434
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1435
    sel := self selection.
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1436
    (object isByteArray) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1437
        ^ #(
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1438
               ('Save Bytes to File...'             #saveBytesToFile)
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1439
          ).
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1440
    ].
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1441
    ^ #()
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1442
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1443
    "Created: / 25-01-2011 / 17:16:12 / cg"
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1444
!
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1445
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1446
optionalFilenameSelectionItems
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1447
    |sel|
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1448
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1449
    sel := self selection.
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1450
    (object isFilename or:[sel isFilename]) ifTrue:[
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1451
        OperatingSystem isMSWINDOWSlike ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1452
            ^ #(
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1453
                       ('Show in Explorer'             #showInWindowsExplorer)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1454
                       ('Open FileBrowser'             #openFileBrowser)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1455
              ).
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1456
        ].
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1457
        ^ #(
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1458
               ('Open FileBrowser'             #openFileBrowser)
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1459
          ).
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1460
    ].
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1461
    ^ #()
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1462
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1463
    "Created: / 09-02-2007 / 16:10:30 / cg"
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1464
    "Modified: / 05-02-2011 / 15:49:48 / cg"
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1465
!
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1466
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1467
optionalMethodOrBlockSelectionItems
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1468
    |sel items|
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1469
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1470
    sel := self selection.
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1471
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1472
    items := #().
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1473
    (sel isBlock or:[sel isContext]) ifTrue:[
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1474
        items := items , #(
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1475
                       ('Browse Block''s Home'           #browseHome)
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1476
              ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1477
    ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1478
    (object isMethod or:[sel isMethod]) ifTrue:[
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1479
        items := items , #(
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1480
                       ('Browse Method''s Class'         #browseMethodsClass)
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1481
                 ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1482
    ].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1483
    (selectionIndex notNil 
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1484
    and:[(self fieldList at:selectionIndex ifAbsent:nil) = '-dependents']) ifTrue:[
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1485
        items := items , #(
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1486
                       ('Browse Update Methods'        #browseUpdateMethods)
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1487
                 ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1488
    ].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1489
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1490
    ^ items
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1491
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1492
    "Modified: / 03-08-2011 / 15:03:36 / cg"
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1493
!
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1494
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1495
optionalStreamSelectionItems
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1496
    |sel|
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1497
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1498
    sel := self selection.
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1499
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1500
    sel isStream ifTrue:[
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1501
        sel isFileStream ifTrue:[
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1502
            OperatingSystem isMSWINDOWSlike ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1503
                ^ #(
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1504
                       ('Show in Explorer'             #showInWindowsExplorer)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1505
                       ('Open FileBrowser'             #openFileBrowser)
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1506
                  ).
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1507
            ].
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1508
            ^ #(
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1509
                       ('Open FileBrowser'             #openFileBrowser)
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1510
              ).
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1511
        ].
9384
30eafebfd3f5 code deobfuscated:
Claus Gittinger <cg@exept.de>
parents: 9378
diff changeset
  1512
        sel isExternalStream ifFalse:[
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1513
            ^ #(
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1514
                       ('Show Stream Contents'         #showStreamContents)
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1515
              ).
8090
45e0ec5d10f5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8065
diff changeset
  1516
        ].
7639
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1517
    ].
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1518
    ^ #()
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1519
c888d208bda0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7629
diff changeset
  1520
    "Created: / 09-02-2007 / 16:09:15 / cg"
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1521
    "Modified: / 05-02-2011 / 15:49:55 / cg"
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1522
!
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1523
9703
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1524
optionalToolItems
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1525
    "inserted after inspect/browse"
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1526
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1527
    ^ #()
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1528
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1529
    "Created: / 27-01-2011 / 11:51:12 / cg"
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1530
!
0262e41260f0 added: #optionalToolItems
Claus Gittinger <cg@exept.de>
parents: 9701
diff changeset
  1531
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1532
optionalViewSelectionItems
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1533
    |sel|
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1534
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1535
    sel := self selection.
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1536
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1537
    sel isView ifTrue:[
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1538
        ^ #(
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1539
            ('Show Widget Hierarchy'             #openWidgetHierarchy)
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1540
          ).
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1541
    ].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1542
    ^ #()
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1543
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1544
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1545
sortOrderItems
11634
06cd46b8e285 changed: #sortOrderItems
Claus Gittinger <cg@exept.de>
parents: 11629
diff changeset
  1546
    object class instSize == 0 ifTrue:[ ^ #() ].
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1547
    ^ {
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1548
        #('-') .
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1549
        (sortOrder == #instvarOrder) 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1550
            ifFalse:[ #('Instvar Order'  #setSortOrderToInstvarOrder  ) ] .
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1551
        (sortOrder == #alphabetical) 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1552
            ifFalse:[ #('Alphabetical'  #setSortOrderToAlphabetical  ) ] .
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1553
      } select:[:el | el notNil].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1554
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1555
    "Created: / 20-07-2012 / 10:47:53 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1556
! !
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1557
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1558
!InspectorView methodsFor:'menu actions'!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1559
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1560
browse
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1561
    |cls|
527
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1562
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1563
    cls := self selectedField class.
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1564
    (cls browserClass ? UserPreferences current systemBrowserClass) 
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1565
        openInClass:cls selector:nil
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1566
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1567
    "Created: / 14-12-1995 / 19:15:50 / cg"
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1568
    "Modified: / 27-07-2012 / 22:42:44 / cg"
527
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1569
!
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1570
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1571
browseClass
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1572
    |cls|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1573
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1574
    cls := self selectedField class.
10436
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1575
    cls browserClass 
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1576
        openInClass:cls selector:nil
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1577
        "/ browseClass:cls
75108fe4b96f comment/format in: #browse
Claus Gittinger <cg@exept.de>
parents: 10424
diff changeset
  1578
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1579
    "Modified: / 27-07-2012 / 22:42:39 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1580
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1581
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1582
browseClassHierarchy
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1583
    |cls|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1584
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1585
    cls := self selectedField class.
527
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1586
    cls browserClass browseClassHierarchy:cls
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1587
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1588
    "Modified: / 27-07-2012 / 22:42:47 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1589
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1590
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1591
browseFullClassProtocol
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1592
    |cls|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1593
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1594
    cls := self selectedField class.
527
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1595
    cls browserClass browseFullClassProtocol:cls
2faba0c6ab96 ask class for browserClass
Claus Gittinger <cg@exept.de>
parents: 510
diff changeset
  1596
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1597
    "Modified: / 27-07-2012 / 22:42:50 / cg"
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1598
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1599
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1600
browseHome
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1601
    |sel mthd|
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1602
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1603
    sel := self selectedField.
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1604
    sel isBlock ifTrue:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1605
        mthd := sel homeMethod
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1606
    ] ifFalse:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1607
        sel isContext ifTrue:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1608
            mthd := sel method.
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1609
        ]
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1610
    ].
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1611
    mthd isNil ifTrue:[
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1612
        ^ self warn:'Sorry - cannot figure out home method.'
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1613
    ].
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1614
    mthd class browserClass 
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1615
        openInClass:mthd mclass selector:mthd selector
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1616
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1617
    "Modified: / 27-07-2012 / 22:42:55 / cg"
2579
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1618
!
81108fb4f996 added browse home-method
Claus Gittinger <cg@exept.de>
parents: 2475
diff changeset
  1619
4197
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1620
browseMethodsClass
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1621
    |mthd|
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1622
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1623
    mthd := self selection.
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1624
    mthd mclass browserClass 
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1625
        openInClass:mthd mclass selector:mthd selector
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1626
!
8086dadff648 added broese methods class
Claus Gittinger <cg@exept.de>
parents: 4106
diff changeset
  1627
7975
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1628
browseUpdateMethods
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1629
    |deps methods|
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1630
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1631
    deps := self selection.
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1632
    methods := Set new.
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1633
    deps do:[:each | 
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1634
        |implClass|
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1635
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  1636
        implClass := each class whichClassIncludesSelector:#'update:with:from:'.
7975
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1637
        implClass notNil ifTrue:[
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1638
            methods add:(implClass compiledMethodAt:#'update:with:from:')
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1639
        ]
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1640
    ].
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1641
    methods isEmpty ifTrue:[^ self].
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1642
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1643
    methods first mclass browserClass 
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1644
        browseMethods:methods
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1645
        title:'Update Method(s) of dependent(s)'
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1646
!
39967da19bfe +browseUpdatemethods
Claus Gittinger <cg@exept.de>
parents: 7951
diff changeset
  1647
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1648
doBack
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1649
    "user selected back-menu entry"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1650
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1651
    |objectToInspect|
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1652
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1653
    inspectHistory size > 0 ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1654
        objectToInspect := inspectHistory removeLast.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1655
        inspectHistory size == 0 ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1656
            inspectHistory := nil
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1657
        ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1658
        self inspect:objectToInspect.
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1659
    ]
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1660
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1661
    "Created: / 22.9.1998 / 18:22:01 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1662
    "Modified: / 22.9.1998 / 18:22:28 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1663
!
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1664
1930
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1665
doBasicInspect
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1666
    "user selected inspect-menu entry"
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1667
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1668
    self doInspect:true 
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1669
!
fc38f714f4ab checkin from browser
Claus Gittinger <cg@exept.de>
parents: 1895
diff changeset
  1670
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1671
doFollow
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1672
    "user selected follow-menu entry"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1673
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1674
    |objectToInspect|
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1675
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1676
    selectionIndex notNil ifTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1677
        objectToInspect := self selection.
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1678
        inspectHistory isNil ifTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1679
            inspectHistory := OrderedCollection new
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1680
        ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1681
        inspectHistory addLast:object.
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1682
        self inspect:objectToInspect.
1895
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1683
    ]
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1684
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1685
    "Created: / 22.9.1998 / 18:21:08 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1686
    "Modified: / 22.9.1998 / 18:22:23 / cg"
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1687
!
8b51d61d9c0a added follow & back menu items.
Claus Gittinger <cg@exept.de>
parents: 1873
diff changeset
  1688
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1689
doInspect
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1690
    "user selected inspect-menu entry"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1691
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1692
    self doInspect:false
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1693
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1694
1365
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1695
doNewInspect
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1696
    self doInspect:#new
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1697
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1698
    "Created: / 31.10.1997 / 12:45:38 / cg"
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1699
    "Modified: / 31.10.1997 / 12:47:11 / cg"
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1700
!
4a98e9a59430 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1270
diff changeset
  1701
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1702
doStartMonitor
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1703
    "start a monitoring process"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1704
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1705
    monitorProcess isNil ifTrue:[
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1706
        monitorProcess :=
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1707
            [
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1708
                |sel|
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  1709
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1710
                [true] whileTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1711
                    (sel := selectionIndex) notNil ifTrue:[
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1712
                        self showSelection:sel 
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1713
                    ].
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1714
                    (Delay forSeconds:0.5) wait
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1715
                ]
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  1716
            ] forkAt:Processor userBackgroundPriority
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1717
    ]
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1718
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1719
    "Modified: 12.4.1996 / 14:20:06 / cg"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1720
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1721
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1722
doStopMonitor
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1723
    "stop the monitor"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1724
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1725
    monitorProcess terminate.
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1726
    monitorProcess := nil
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1727
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1728
2800
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  1729
doTraceAll
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1730
    "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
  1731
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1732
    self topView withWaitCursorDo:[MessageTracer traceAll:object on:Transcript]
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1733
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1734
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1735
doTrap
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1736
    "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
  1737
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1738
    |string selector|
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1739
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1740
    string := Dialog request:'Selector to trap on:' onCancel:nil.
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1741
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1742
    string notNil ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1743
        selector := string asSymbolIfInterned.
901
56fe927e0734 fix doTrap
ca
parents: 874
diff changeset
  1744
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1745
        selector isNil ifTrue:[
11893
ae42ce342190 changed:
Claus Gittinger <cg@exept.de>
parents: 11858
diff changeset
  1746
            self warn:'No such selector'
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1747
        ] ifFalse:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1748
            self topView withWaitCursorDo:[MessageTracer trap:object 
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1749
                                                         selector:selector]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1750
        ]
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1751
    ]
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
    "Modified: 12.4.1996 / 14:07:01 / cg"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1754
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1755
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1756
doTrapAll
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1757
    "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
  1758
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1759
    self topView withWaitCursorDo:[MessageTracer trapAll:object]
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1760
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1761
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1762
doTrapAnyInstVarChange
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1763
    "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
  1764
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1765
    self topView withWaitCursorDo:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1766
        MessageTracer trapModificationsIn:object
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1767
    ]
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1768
!
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1769
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1770
doTrapInstVarChange
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1771
    "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
  1772
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1773
    self topView withWaitCursorDo:[
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1774
        |idx|
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1775
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1776
        "/ a named instVar ?
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1777
        idx := self instVarIndexForLine:selectionIndex.
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1778
        idx isNil ifTrue:[
11893
ae42ce342190 changed:
Claus Gittinger <cg@exept.de>
parents: 11858
diff changeset
  1779
            self warn:'Select an instance variable first.'.
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1780
            ^ self.
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1781
        ].
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1782
        MessageTracer 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1783
                trapModificationsOf:(object class allInstVarNames at:idx)
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1784
                in:object
2850
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1785
    ]
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1786
!
f05e61a40fe8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2800
diff changeset
  1787
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1788
doUntrace
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1789
    "remove traps/traces"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1790
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1791
    MessageTracer untrace:object
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1792
!
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1793
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1794
inspectOwners
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1795
    "open an inspector on owners of the inspectedObject.
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1796
     (this is a secret function)"
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1797
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1798
    self withCursor:(Cursor questionMark) do:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1799
        |owners dict|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1800
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1801
        owners := (ObjectMemory whoReferences:object) asOrderedCollection.
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1802
        owners size > 500 ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1803
            (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
  1804
            ifFalse:[^ self]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1805
        ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1806
        dict := IdentityDictionary new.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1807
        owners do:[:owner |
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1808
            |set names oClass|
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1809
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1810
            owner ~~ self ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1811
                set := Set new.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1812
                names := owner class allInstVarNames.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1813
                oClass := owner class.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1814
                1 to:oClass instSize do:[:i |
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1815
                    (owner instVarAt:i) == object ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1816
                        set add:(names at:i).
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1817
                    ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1818
                ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1819
                oClass isVariable ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1820
                    oClass isPointers ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1821
                        1 to:owner basicSize do:[:i |
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  1822
                            (owner basicAt:i) == object ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1823
                                 set add:i
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1824
                            ]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1825
                        ]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1826
                    ]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1827
                ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1828
                dict at:owner put:set
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1829
            ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1830
        ].
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  1831
        dict inspect
472
7e2d83585ed7 category rename; menu order changed
Claus Gittinger <cg@exept.de>
parents: 446
diff changeset
  1832
    ]
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  1833
!
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  1834
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1835
letSelectedObjectPerform:aSelector
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1836
    |sel argString|
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1837
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1838
    sel := self selectedField.
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1839
    aSelector numArgs == 0 ifTrue:[
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1840
        (sel perform:aSelector) inspect.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1841
        ^ self.
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1842
    ].
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1843
    aSelector numArgs == 1 ifTrue:[
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1844
        argString := Dialog request:'Argument (Smalltalk Object)'.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1845
        argString isEmptyOrNil ifTrue:[^ self].
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1846
        (sel perform:aSelector with:(Object readFrom:argString)) inspect.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1847
        ^ self.
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1848
    ].
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1849
self halt.
9574
d2a1b8074d35 changed:
Claus Gittinger <cg@exept.de>
parents: 9557
diff changeset
  1850
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  1851
    "Modified: / 27-07-2012 / 22:43:37 / cg"
8993
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1852
!
ddf4fc887179 experimental protocol menu...
Claus Gittinger <cg@exept.de>
parents: 8962
diff changeset
  1853
6283
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  1854
openFileBrowser
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  1855
    |fn|
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  1856
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  1857
    fn := self selection.
9615
6fc22155a4f6 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9574
diff changeset
  1858
    fn isNil ifTrue:[ fn := inspectedObject ].
8155
018dcb4973bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8090
diff changeset
  1859
    fn isStream ifTrue:[
018dcb4973bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8090
diff changeset
  1860
        fn := fn pathName asFilename
018dcb4973bf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8090
diff changeset
  1861
    ].
9794
6aa5341140a7 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9737
diff changeset
  1862
    (UserPreferences current fileBrowserClass) openOnFileNamed:fn asFilename.
6aa5341140a7 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9737
diff changeset
  1863
6aa5341140a7 changed: #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 9737
diff changeset
  1864
    "Modified: / 22-03-2011 / 18:05:22 / cg"
6283
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  1865
!
7fa17d36a91c +openFileBrowser (when inspeting a filename)
Claus Gittinger <cg@exept.de>
parents: 6130
diff changeset
  1866
8799
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1867
openWidgetHierarchy
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1868
    |view|
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1869
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1870
    view := self selection.
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1871
    view isView ifFalse:[^ self].
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1872
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1873
    WindowTreeView openOn:view
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1874
!
1d12c3d835ba +showWidgetHierarchy
Claus Gittinger <cg@exept.de>
parents: 8726
diff changeset
  1875
9700
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1876
saveBytesToFile
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1877
    |fn|
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1878
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1879
    fn := Dialog requestFileName:'Save bytes into:'.
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1880
    fn isEmptyOrNil ifTrue:[^ self].
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1881
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1882
    fn asFilename contents:inspectedObject.
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1883
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1884
    "Modified: / 25-01-2011 / 17:23:38 / cg"
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1885
!
Claus Gittinger <cg@exept.de>
parents: 9693
diff changeset
  1886
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1887
setDisplayRadixTo10
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1888
    self setDisplayRadixTo:10
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1889
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1890
    "Created: / 24-08-2010 / 17:26:12 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1891
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1892
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1893
setDisplayRadixTo16
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1894
    self setDisplayRadixTo:16
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1895
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1896
    "Created: / 24-08-2010 / 17:26:22 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1897
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1898
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1899
setDisplayRadixTo2
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1900
    self setDisplayRadixTo:2
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1901
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1902
    "Created: / 24-08-2010 / 17:26:18 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1903
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1904
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1905
setDisplayRadixTo:radix
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1906
    |sel|
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1907
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1908
    integerDisplayRadix := DefaultIntegerDisplayRadix := radix.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1909
    self reinspect.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1910
    sel := listView selection.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1911
    sel notNil ifTrue:[
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1912
        self showSelection:sel
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1913
    ]
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1914
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1915
    "Created: / 24-08-2010 / 17:26:54 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1916
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1917
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1918
setSortOrderTo:aSymbol
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1919
    sortOrder := aSymbol.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1920
    self reinspect.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1921
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1922
    "Created: / 20-07-2012 / 10:59:30 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1923
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1924
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1925
setSortOrderToAlphabetical
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1926
    self setSortOrderTo:#alphabetical
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1927
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1928
    "Created: / 20-07-2012 / 10:59:52 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1929
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1930
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1931
setSortOrderToInstvarOrder
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1932
    self setSortOrderTo:#instvarOrder
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1933
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1934
    "Created: / 20-07-2012 / 10:59:59 / cg"
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1935
!
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  1936
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1937
showAll
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1938
    |o|
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1939
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1940
    hasMore ifTrue:[
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  1941
        nShown := self numIndexedFields.
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1942
        "/ force update (which is otherwise ignored)
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1943
        o := object.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1944
        inspectedObject := object := nil.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1945
        self inspect:o
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1946
    ]
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1947
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1948
    "Created: / 13-06-2012 / 09:27:45 / cg"
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1949
!
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1950
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1951
showInWindowsExplorer
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1952
    "show in explorer"
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1953
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1954
    |fn dir|
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1955
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1956
    fn := self selection.
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1957
    fn isNil ifTrue:[ fn := inspectedObject ].
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1958
    fn isStream ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1959
        fn := fn pathName asFilename
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1960
    ].
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1961
    dir := fn isDirectory
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1962
            ifTrue:[ fn ]
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1963
            ifFalse:[ fn directory ].
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1964
11641
17b6078ca84a changed: #showInWindowsExplorer
Claus Gittinger <cg@exept.de>
parents: 11634
diff changeset
  1965
    dir asFilename openExplorer
9737
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1966
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1967
    "Created: / 05-02-2011 / 15:49:33 / cg"
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1968
!
Claus Gittinger <cg@exept.de>
parents: 9736
diff changeset
  1969
11576
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1970
showMore
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1971
    |o|
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1972
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1973
    hasMore ifTrue:[
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1974
        nShown := nShown * 2.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1975
        "/ force update (which is otherwise ignored)
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1976
        o := object.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1977
        inspectedObject := object := nil.
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1978
        self inspect:o
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1979
    ]
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1980
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1981
    "Modified: / 26.8.1998 / 19:05:25 / cg"
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1982
!
e5361052ab2f +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11565
diff changeset
  1983
7951
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1984
showOwners
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1985
    |o|
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1986
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1987
    o := self selection.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1988
    self withCursor:(Cursor questionMark) do:[
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1989
        |owners dict|
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1990
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1991
        owners := (ObjectMemory whoReferences:o).
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1992
        owners isEmptyOrNil ifTrue:[
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1993
            self information:'No owners found.'.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1994
            ^ self
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1995
        ].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1996
        owners := owners asOrderedCollection.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1997
        "
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1998
         skip weakArrays ... (they dont count)
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  1999
        "
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2000
        owners := owners reject:[:owner | owner isMemberOf:WeakArray].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2001
        owners inspect.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2002
"/        inspector := DictionaryInspectorView openOn:dict.
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2003
"/        inspector listView doubleClickAction:[:lineNr | inspector doInspectKey].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2004
    ]
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2005
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2006
    "Modified: 15.10.1996 / 22:09:38 / cg"
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2007
!
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2008
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2009
showReferences
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2010
    "user selected references-menu entry"
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2011
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2012
    self selection class hasImmediateInstances ifTrue:[
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2013
        ^ self warn:'Sorry - cannot show references to immediate objects'
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2014
    ].
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2015
    ObjectMemory displayRefChainTo:(self selection)
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2016
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2017
    "Modified: / 30.7.1998 / 14:03:16 / cg"
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2018
!
ebebf170a28c changed #fieldMenu
Claus Gittinger <cg@exept.de>
parents: 7904
diff changeset
  2019
2587
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2020
showStreamContents
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2021
    |sel|
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2022
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2023
    sel := self selection.
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2024
    (sel isStream and:[sel isExternalStream not]) ifTrue:[
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2025
        workspace replace:(sel contents printString)
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2026
    ].
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2027
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2028
    "Created: / 6.2.2000 / 13:46:37 / cg"
b6838cdb1f14 added show-stream-contents menu item
Claus Gittinger <cg@exept.de>
parents: 2580
diff changeset
  2029
    "Modified: / 6.2.2000 / 13:47:37 / cg"
73
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  2030
! !
e332d9c71624 *** empty log message ***
claus
parents: 71
diff changeset
  2031
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2032
!InspectorView methodsFor:'presentation'!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2033
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2034
appendDisplayStringForElementsOf:val indent:lvl pad:padding to:aStream
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2035
    val doWithIndex:[:el :idx |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2036
        |elValString|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2037
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2038
        aStream spaces:lvl.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2039
        aStream nextPutAll:(' ' paddedTo:padding with:$.).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2040
        aStream nextPutAll:(' [',(idx printString leftPaddedTo:2),']').
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2041
        aStream nextPutAll:' : '.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2042
        elValString := self basicDisplayStringForValue:el.                
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2043
        aStream nextPutAll:elValString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2044
        aStream cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2045
        "/ s nextPutAll:(self stringWithAllInstVarValuesFor:el level:lvl+4)
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2046
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2047
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2048
    "Created: / 12-02-2012 / 09:55:53 / cg"
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2049
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2050
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2051
basicDisplayStringForValue:someValue 
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2052
    "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
  2053
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2054
    |s|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2055
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2056
    Error handle:[:ex |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2057
        s := someValue classNameWithArticle.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2058
        displayStringMessage == #displayString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2059
            s := s , ' "error in displayString: ' , ex description , '"'
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2060
        ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2061
            s := s , ' "error in displayString (' , displayStringMessage , '): ' , ex description , '"'
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2062
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2063
        ^ s
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2064
    ] do:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2065
        integerDisplayRadix ~= 10 ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2066
            "/ not everything can be shown in HEX/Binary
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2067
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2068
            someValue isInteger ifTrue:[
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2069
                (someValue < integerDisplayRadix) ifTrue:[  
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2070
                    ^ someValue printString.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2071
                ].
11276
d966f9687b59 changed: #basicDisplayStringForValue:
Claus Gittinger <cg@exept.de>
parents: 11251
diff changeset
  2072
                s := someValue radixPrintStringRadix:integerDisplayRadix.
d966f9687b59 changed: #basicDisplayStringForValue:
Claus Gittinger <cg@exept.de>
parents: 11251
diff changeset
  2073
                s := s , ' "',(someValue printString),'"'.
d966f9687b59 changed: #basicDisplayStringForValue:
Claus Gittinger <cg@exept.de>
parents: 11251
diff changeset
  2074
                ^ s
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2075
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2076
            (someValue isMemberOf:ByteArray) ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2077
                s := WriteStream on:(String new:10).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2078
                s writeLimit:100000.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2079
                someValue printOn:s base:integerDisplayRadix showRadix:true.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2080
                ^ s contents
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2081
            ]
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2082
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2083
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2084
        "/ displayStringMessage := #classNameWithArticle
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2085
        "/ displayStringMessage := #displayString
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2086
        "/ displayStringMessage := #printString
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2087
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2088
        s := CharacterWriteStream on:(String new:10).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2089
        s writeLimit:100000.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2090
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2091
        someValue isLazyValue ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2092
            s nextPutAll:someValue class nameWithArticle    
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2093
        ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2094
            "/ 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
  2095
            displayStringMessage == #displayString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2096
                someValue displayOn:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2097
                "/ s := someValue displayString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2098
            ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2099
                displayStringMessage == #printString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2100
                    someValue printOn:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2101
                    "/ s := someValue printString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2102
                ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2103
                    displayStringMessage == #storeString ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2104
                        someValue storeOn:s.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2105
                        "/ s := someValue storeString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2106
                    ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2107
                        ^ someValue perform:displayStringMessage.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2108
                    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2109
                ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2110
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2111
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2112
        ^ s contents
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2113
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2114
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2115
    "Modified: / 20-07-2012 / 10:54:05 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2116
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2117
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2118
displayStringForValue:someValue
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2119
    "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
  2120
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2121
    |idx sel extraAttributes|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2122
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2123
    idx := self theSingleSelectionIndex.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2124
    idx notNil ifTrue:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2125
        sel := self listEntryAt:idx.
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2126
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2127
        extraAttributes := object inspectorExtraAttributes.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2128
        (extraAttributes notNil and:[extraAttributes includesKey:sel]) ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2129
            ^ someValue "(extraAttributes at:sel) value" printString
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2130
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2131
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2132
        (sel startsWith:'-all inst vars') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2133
            ^ self stringWithAllInstVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2134
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2135
        (sel startsWith:'-all indexed vars') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2136
            ^ self stringWithAllIndexedVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2137
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2138
        (sel startsWith:'-all messages') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2139
            ^ self stringWithMessages:#all
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2140
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2141
        (sel startsWith:'-local messages') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2142
            ^ self stringWithMessages:#local
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2143
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2144
        (sel startsWith:'-inherited messages') ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2145
            ^ self stringWithMessages:#inherited
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2146
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2147
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2148
    ^ self basicDisplayStringForValue:someValue
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2149
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2150
    "Modified: / 16-05-2012 / 17:55:05 / cg"
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2151
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2152
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2153
iconForValue: anObject
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2154
    anObject isNil ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2155
        ^ self class imageFor_nil
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2156
    ].
11835
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2157
    anObject isLazyValue ifTrue:[
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2158
        ^ self class imageFor_others
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2159
    ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2160
    anObject isNumber ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2161
        anObject isInteger ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2162
            ^ self class imageFor_integers
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2163
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2164
        anObject isFloat ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2165
            ^ self class imageFor_floats
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2166
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2167
        anObject isFraction ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2168
            ^ self class imageFor_fractions
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2169
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2170
    ].
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2171
    anObject isCollection ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2172
        anObject isString ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2173
            anObject isSymbol ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2174
                ^ self class imageFor_symbols
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2175
            ].
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2176
            ^ self class imageFor_strings
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2177
        ].
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2178
        (anObject isKindOf:Dictionary) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2179
            ^ self class imageFor_dictionaries
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2180
        ].
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2181
        (anObject isArray) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2182
            ^ self class imageFor_arrays
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2183
        ].
11521
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
  2184
        (anObject isSequenceable) ifTrue:[
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
  2185
            ^ self class imageFor_sequenceableCollections
edf68f0ed11c added: #imageFor_sequenceableCollections
Claus Gittinger <cg@exept.de>
parents: 11519
diff changeset
  2186
        ].
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2187
        ^ self class imageFor_collections
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2188
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2189
    anObject == true ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2190
        ^ self class imageFor_true
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2191
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2192
    anObject == false ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2193
        ^ self class imageFor_false
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2194
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2195
    anObject isCharacter ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2196
        ^ self class imageFor_characters
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2197
    ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2198
    anObject isBehavior ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2199
        ^ self class imageFor_classes
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2200
    ].
11768
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
  2201
    anObject isColor ifTrue:[
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
  2202
        ^ self class imageFor_colors
40f68c94ef97 added: #imageFor_colors
Claus Gittinger <cg@exept.de>
parents: 11763
diff changeset
  2203
    ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2204
    ^ self class imageFor_others
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2205
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2206
    "Created: / 16-05-2012 / 17:58:20 / cg"
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2207
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2208
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2209
listEntryForName:nameString value:value
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2210
    |entryString|
11517
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2211
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2212
    UserPreferences current showTypeIndicatorInInspector ifFalse:[
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2213
        ^ nameString
bf056eb85f41 changed:
Claus Gittinger <cg@exept.de>
parents: 11514
diff changeset
  2214
    ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2215
11749
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2216
    Error handle:[:ex |
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2217
        ^ nameString
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2218
    ] do:[
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2219
        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
  2220
        (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
  2221
            entryString := entryString
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2222
                         , '  ' , ('   '
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2223
                            colorizeAllWith:((value brightness < 0.5)
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2224
                                    ifTrue:[ Color white ]
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2225
                                    ifFalse:[ Color black ])
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2226
                            on:value).
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2227
        ].
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2228
213908da088d changed: #listEntryForName:value:
Claus Gittinger <cg@exept.de>
parents: 11748
diff changeset
  2229
        ^ LabelAndIcon string:entryString image:(self iconForValue:value)
11547
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
  2230
    ].
ebc7b2190f54 comment/format in: #reinspect
Claus Gittinger <cg@exept.de>
parents: 11521
diff changeset
  2231
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2232
    "Created: / 16-05-2012 / 18:42:28 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2233
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2234
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2235
plainValueStringInListEntryForValue:value
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2236
    "returns nil or a string to show in angle brackets"
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2237
11587
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2238
    |s|
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2239
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2240
    UserPreferences current showTypeIndicatorInInspector ifFalse:[^ nil].
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2241
11587
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2242
    value class == ValueHolder ifTrue:[
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2243
        s := self plainValueStringInListEntryForValue:value value.
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2244
        s notNil ifTrue:[
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2245
            ^ '[[' , s , ']]'
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2246
        ].
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2247
        ^ nil
916e12f6b843 changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11580
diff changeset
  2248
    ].
11835
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2249
    value isLazyValue ifTrue:[
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2250
        "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
  2251
        ^ '>>Lazy value<<'
ce6eddec9960 Do not block an lazy values (e.g. Futures)
Stefan Vogel <sv@exept.de>
parents: 11823
diff changeset
  2252
    ].
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2253
    (value isNumber or:[value isBoolean]) ifTrue:[
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2254
        ^ self basicDisplayStringForValue:value "value printString"
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2255
    ].
11810
320b379eaedb changed: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11808
diff changeset
  2256
    ^ value inspectorValueStringInListFor:self
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2257
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2258
    "Created: / 13-06-2012 / 12:50:26 / cg"
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2259
!
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2260
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2261
stringWithAllIndexedVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2262
    |nIdx s names maxLen varString padLeft|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2263
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2264
    nIdx := object size.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2265
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2266
    s := CharacterWriteStream on:''.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2267
    names := self indexList.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2268
    names size > 0 ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2269
        maxLen := (names collect:[:eachName | eachName printString size]) max.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2270
        padLeft := names conform:[:eachIdx | eachIdx isInteger].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2271
        
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2272
        names do:[:eachIdx |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2273
            |val|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2274
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2275
            padLeft ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2276
                s nextPutAll:(eachIdx printStringLeftPaddedTo:maxLen).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2277
            ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2278
                s nextPutAll:((eachIdx printString , ' ') paddedTo:maxLen+1 with:$.).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2279
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2280
            s nextPutAll:' : '.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2281
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2282
            val := self indexedValueAtKey:eachIdx.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2283
11251
00baec48d015 changed:
Claus Gittinger <cg@exept.de>
parents: 11250
diff changeset
  2284
            ((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
  2285
                s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2286
                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
  2287
            ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2288
                varString := self basicDisplayStringForValue:val.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2289
                (varString includes:Character cr) ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2290
                    varString := varString copyTo:(varString indexOf:Character cr)-1.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2291
                    varString := varString , '...'.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2292
                ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2293
                s nextPutLine:varString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2294
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2295
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2296
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2297
    nShown < nIdx ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2298
        s nextPutLine:' ...'.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2299
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2300
    ^ s contents
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2301
11251
00baec48d015 changed:
Claus Gittinger <cg@exept.de>
parents: 11250
diff changeset
  2302
    "Modified: / 12-02-2012 / 10:52:04 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2303
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2304
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2305
stringWithAllInstVarValues
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2306
    ^ self stringWithAllInstVarValuesFor:object level:0
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2307
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2308
    "Modified: / 31-01-2012 / 18:23:11 / cg"
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2309
!
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2310
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2311
stringWithAllInstVarValuesFor:anObject level:lvl
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2312
    |s names maxLen|
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2313
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2314
    s := CharacterWriteStream on:''.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2315
    names := anObject class allInstVarNames.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2316
    maxLen := (names collect:[:eachName | eachName size]) max.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2317
    names keysAndValuesDo:[:eachInstVarIndex :eachInstVarName |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2318
        |val valString|
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
        val := anObject instVarAt:eachInstVarIndex.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2321
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2322
        s spaces:lvl.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2323
        s nextPutAll:((eachInstVarName , ' ') paddedTo:maxLen+1 with:$.).
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2324
        s nextPutAll:' : '.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2325
11251
00baec48d015 changed:
Claus Gittinger <cg@exept.de>
parents: 11250
diff changeset
  2326
        ((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
  2327
            s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2328
            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
  2329
        ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2330
            valString := self basicDisplayStringForValue:val.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2331
            (valString includes:Character cr) ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2332
                valString := valString copyTo:(valString indexOf:Character cr)-1.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2333
                valString := valString , '...'.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2334
            ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2335
            s nextPutAll:valString.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2336
            s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2337
        ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2338
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2339
    ^ s contents
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2340
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2341
    "Created: / 31-01-2012 / 18:23:15 / cg"
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2342
!
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
stringWithMessages:which
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2345
    |cls s messages |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2346
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2347
    s := CharacterWriteStream on:''.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2348
    cls := object class.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2349
    which == #local ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2350
        messages := cls selectors.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2351
    ] ifFalse:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2352
        which == #all ifTrue:[
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2353
            messages := cls allSelectors.
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
            messages := cls allSelectors copy asSet removeAll:cls selectors; yourself.
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
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2358
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2359
    messages asOrderedCollection sort do:[:eachSelector |
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2360
        s nextPutAll:eachSelector.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2361
        s cr.
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2362
    ].
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2363
    ^ s contents
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2364
!
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2365
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2366
valueStringInListEntryForValue:value
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2367
    "returns something to append to the name"
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2368
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2369
    |valString|
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2370
11580
0bcaed8e460b added: #plainValueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11579
diff changeset
  2371
    valString := self plainValueStringInListEntryForValue:value.
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2372
    valString isNil ifTrue:[^ ''].
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2373
    ^ ' <',valString,'>'
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2374
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2375
    "Created: / 13-06-2012 / 12:04:31 / cg"
11250
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2376
! !
a7ed642b37fa added: #appendDisplayStringForElementsOf:indent:pad:to:
Claus Gittinger <cg@exept.de>
parents: 11247
diff changeset
  2377
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2378
!InspectorView methodsFor:'private'!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2379
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2380
baseInspectedObjectClass
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2381
    ^ Object
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2382
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2383
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2384
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2385
647
1791ceddf2ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 644
diff changeset
  2386
defaultLabel
9736
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  2387
    ^ 'InstVars & Pseudo Slots'
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  2388
94b7fca09158 class definition
Claus Gittinger <cg@exept.de>
parents: 9703
diff changeset
  2389
    "Modified: / 05-02-2011 / 14:06:26 / cg"
647
1791ceddf2ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 644
diff changeset
  2390
!
1791ceddf2ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 644
diff changeset
  2391
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2392
derivedFieldNames
9701
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2393
    |d actionItems valueItems otherItems|
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2394
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2395
    d := self derivedFields.
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2396
    (d isKindOf:Dictionary) ifTrue:[
9701
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2397
        actionItems := d keys select:[:k | k startsWith:'!!'] as:OrderedCollection .
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2398
        valueItems := d keys select:[:k | k startsWith:'-'] as:OrderedCollection.
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2399
        otherItems := d keys select:[:k | (k startsWithAnyOf:#('!!' '-')) not] as:OrderedCollection.
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2400
        ^ ((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
  2401
          ,
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2402
          otherItems sort
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2403
    ].
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2404
    ^ d collect:[:eachEntry |
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2405
            |nm|
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2406
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2407
            nm := (eachEntry isAssociation) 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2408
                    ifTrue:[ eachEntry key ] 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2409
                    ifFalse:[ eachEntry first ].
8699
c15ffeafbe35 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8689
diff changeset
  2410
            '-',nm allItalic
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2411
        ]
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2412
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2413
    "Created: / 03-08-2006 / 15:02:54 / cg"
9701
c8c52d6b74e3 changed: #derivedFieldNames
Claus Gittinger <cg@exept.de>
parents: 9700
diff changeset
  2414
    "Modified: / 27-01-2011 / 11:45:17 / cg"
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2415
!
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2416
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2417
derivedFields
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2418
    "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
  2419
     Therefore, we do a manual lookup here:"
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2420
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2421
    (object class whichClassIncludesSelector:#inspectorExtraAttributes) isNil ifTrue:[
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2422
        ^ #()
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2423
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2424
    ^ [object inspectorExtraAttributes]
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2425
                on: MessageNotUnderstood
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2426
                do: [:ex | ex return: #() ]
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2427
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2428
    "Created: / 17-07-2006 / 11:02:32 / cg"
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2429
    "Modified: / 29-08-2006 / 13:03:31 / cg"
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2430
!
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2431
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2432
extraNamedFieldNames
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2433
    ^ self extraNamedFields 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2434
        collect:[:eachEntry |
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2435
            |nm|
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2436
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2437
            nm := (eachEntry isAssociation) 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2438
                    ifTrue:[ eachEntry key ] 
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2439
                    ifFalse:[ eachEntry first ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2440
            '`',nm
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2441
        ]
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2442
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2443
    "Modified: / 03-08-2006 / 15:17:19 / cg"
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2444
!
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2445
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2446
extraNamedFields
6940
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2447
    "by redefining inspectorExtraNamedFields to return an array of
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2448
     pseudo-fieldName->value associations, the inspectors left list can be extended"
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2449
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2450
    "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
  2451
     Therefore, we do a manual lookup here:"
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2452
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2453
    (object class whichClassIncludesSelector:#inspectorExtraNamedFields) isNil ifTrue:[
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2454
        ^ #()
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2455
    ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2456
    ^ [object inspectorExtraNamedFields]
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2457
                on: MessageNotUnderstood
6940
c95880ea4d17 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6851
diff changeset
  2458
                do: [:ex | ex return: #() ]
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2459
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2460
    "Created: / 03-08-2006 / 13:34:18 / cg"
7054
89bf9a75fb79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6940
diff changeset
  2461
    "Modified: / 29-08-2006 / 13:03:57 / cg"
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2462
!
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2463
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2464
extraNamedVarIndexForLine:lineNr
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2465
    "helper - return the index for a named instVar;
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2466
     nil, if self or a keyed instvar is selected."
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2467
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2468
    |idx nNamedInstvarsShown nExtraNamedInstvarsShown cls baseCls firstRealIndex line|
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2469
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2470
    lineNr isNil ifTrue:[^ nil].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2471
    firstRealIndex := 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2472
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2473
    idx := lineNr.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2474
    self hasSelfEntry ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2475
        (lineNr == 1 or:[lineNr isNil]) ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2476
            ^ nil "/ self selected
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2477
        ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2478
        idx := idx - 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2479
        firstRealIndex := 2.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2480
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2481
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2482
    [line := self listEntryAt:firstRealIndex. 
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2483
     (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
  2484
        firstRealIndex := firstRealIndex + 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2485
        idx := idx - 1.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2486
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2487
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2488
    cls := object class.
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2489
    baseCls := self baseInspectedObjectClass.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2490
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2491
    nNamedInstvarsShown := cls instSize.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2492
    "/ only the namedInstvars below baseInspectedObjectClass
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2493
    "/ are shown ...
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2494
    (cls == baseCls or:[cls isSubclassOf:baseCls]) ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2495
        nNamedInstvarsShown := nNamedInstvarsShown - baseCls instSize.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2496
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2497
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2498
    idx := idx - nNamedInstvarsShown.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2499
    idx < 1 ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2500
        ^ nil.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2501
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2502
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2503
    nExtraNamedInstvarsShown := self extraNamedFields size.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2504
    idx <= nExtraNamedInstvarsShown ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2505
        ^ idx.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2506
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2507
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2508
    ^ nil "/ indexed instvar or other selected
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2509
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2510
    "Created: / 03-08-2006 / 13:45:14 / cg"
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2511
    "Modified: / 16-05-2012 / 17:54:52 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2512
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2513
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2514
fieldList 
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2515
    "return a list of names to show in the selectionList.
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2516
     Leave hasMore as true, if a '...' entry should be added."
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2517
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2518
    |derivedFieldList namedFieldList fieldList cls indexedList extraNamedFieldList|
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2519
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2520
    object isNil ifTrue:[
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2521
        ^ self hasSelfEntry ifFalse:[ #() ] ifTrue:[ #('-self') ]
3338
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  2522
    ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2523
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2524
    cls := object class.
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2525
2275
b402f5173c79 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2271
diff changeset
  2526
    self topView withWaitCursorDo:[
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2527
        namedFieldList := self namedFieldList.
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  2528
        indexedList := self indexedFieldList.
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2529
        extraNamedFieldList := OrderedCollection new.
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2530
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2531
        self hasSelfEntry ifTrue:[
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2532
            self suppressPseudoSlots ifFalse:[
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2533
                derivedFieldList := OrderedCollection new.
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2534
                derivedFieldList addAll:(self pseudoFieldNamesWithIndexed:(indexedList notEmptyOrNil)).
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2535
                derivedFieldList addAll:(self derivedFieldNames).
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2536
                extraNamedFieldList addAll:(self extraNamedFieldNames).
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2537
            ].
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  2538
        ].
531
4b079a4e85b4 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 527
diff changeset
  2539
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2540
        fieldList := OrderedCollection new.
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2541
        derivedFieldList notNil ifTrue:[fieldList addAll:derivedFieldList].
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2542
        namedFieldList notNil ifTrue:[fieldList addAll:namedFieldList].
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2543
        extraNamedFieldList notNil ifTrue:[fieldList addAll:extraNamedFieldList].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2544
        indexedList notNil ifTrue:[fieldList addAll:indexedList].
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2545
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  2546
    ^ fieldList
531
4b079a4e85b4 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 527
diff changeset
  2547
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  2548
    "Modified: / 18-09-2006 / 21:16:03 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2549
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2550
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2551
hasSelfEntry
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2552
    ^ hideReceiver not and:[self suppressPseudoSlots not]
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2553
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2554
    "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
  2555
    "Modified: 28.6.1996 / 15:13:41 / cg"
295
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2556
!
92bcaa9996ae minor changes for ContextInspector required
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2557
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2558
indexList 
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2559
    "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
  2560
     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
  2561
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2562
    |objSz n cls list|
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2563
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2564
    cls := object class.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2565
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  2566
    cls isVariable ifFalse:[^ nil ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2567
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2568
    n := objSz := self numIndexedFields.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2569
    (n > nShown) ifTrue:[
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2570
        n := nShown.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2571
        hasMore := true.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2572
    ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2573
    list := (1 to:n).
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2574
    ^ list 
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2575
"/        keysAndValuesCollect:[:idx :nm |
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2576
"/            LabelAndIcon string:nm image:(self iconForValue:(object basicAt:idx))
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2577
"/        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2578
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2579
    "Modified: / 13-06-2012 / 10:14:13 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2580
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2581
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2582
indexOfFirstNamedInstvarInList
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2583
    "helper - return the index for the first named instVar;
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2584
     nil, if self or a keyed instvar is selected."
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2585
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2586
    |firstRealIndex|
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2587
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2588
    firstRealIndex := 1.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2589
    self hasSelfEntry ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2590
        firstRealIndex := 2.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2591
    ].
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2592
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2593
    [
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2594
        |line|
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2595
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2596
        line := self listEntryAt:firstRealIndex. 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2597
        (line startsWith:'-') and:[line size < 2 or:[line second isDigit not]]
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2598
    ] whileTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2599
        firstRealIndex := firstRealIndex + 1.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2600
    ].
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2601
    ^ firstRealIndex
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2602
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2603
    "Modified: / 16-05-2012 / 17:54:46 / cg"
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2604
!
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2605
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2606
indexedFieldList 
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2607
    "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
  2608
     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
  2609
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2610
    |l maxIndex sz list|
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2611
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2612
    l := self indexList.
10858
6a95213e591a changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 10846
diff changeset
  2613
    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
  2614
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2615
    integerDisplayRadix ~~ 10 ifTrue:[
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2616
        maxIndex := l last.
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2617
        maxIndex isInteger ifTrue:[
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2618
            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
  2619
        ] ifFalse:[
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2620
            sz := 0
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2621
        ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2622
        list := l collect:
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2623
            [:i | 
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2624
                i isInteger ifTrue:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2625
                    (i printStringRadix:integerDisplayRadix size:sz fill:$0) 
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2626
                ] ifFalse:[
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2627
                    i printString
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2628
                ]
9557
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2629
            ]
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2630
    ] ifFalse:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2631
        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
  2632
    ].
14b8fe98a8ed can now display values and indices in binary and hex.
Claus Gittinger <cg@exept.de>
parents: 9504
diff changeset
  2633
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2634
    ^ list
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2635
        keysAndValuesCollect:[:idx :nm |
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2636
            |val|
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2637
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2638
            [
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2639
                val := self indexedValueAtIndex:idx.
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2640
            ] on:Error do:[
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2641
                val := ''
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2642
            ].
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2643
"/            [
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2644
"/                val := object at:idx.
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2645
"/            ] on:Error do:[
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2646
"/                [
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2647
"/                    val := object basicAt:idx
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2648
"/                ] on:Error do:[
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2649
"/                    val := ''
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2650
"/                ]
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2651
"/            ].
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2652
            self listEntryForName:nm value:val
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2653
        ].
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2654
11808
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2655
"/    ^ list.
3180e01a7b5e changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11768
diff changeset
  2656
11823
67a370901574 changed: #indexedFieldList
Claus Gittinger <cg@exept.de>
parents: 11810
diff changeset
  2657
    "Modified: / 27-09-2012 / 21:51:58 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2658
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2659
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2660
indexedValueAtIndex:idx
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2661
    ^ object basicAt:idx
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2662
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2663
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  2664
indexedValueAtIndex:idx put:newValue
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2665
    object basicAt:idx put:newValue
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2666
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2667
3884
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2668
indexedValueAtKey:key
4314
7dbc212d0cd2 kludge to show Float bytes
Claus Gittinger <cg@exept.de>
parents: 4268
diff changeset
  2669
    "/ kludge
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2670
    object isLimitedPrecisionReal ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2671
        ^ object basicAt:key
4314
7dbc212d0cd2 kludge to show Float bytes
Claus Gittinger <cg@exept.de>
parents: 4268
diff changeset
  2672
    ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2673
    ^ object at:key
3884
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2674
!
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2675
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2676
instVarIndexForLine:lineNr
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2677
    "helper - return the index for a named instVar;
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2678
     nil, if self or a keyed instvar is selected."
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2679
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2680
    |idx nNamedInstvarsShown cls baseCls firstRealIndex line nm|
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2681
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2682
    lineNr isNil ifTrue:[^ nil].
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2683
    firstRealIndex := 1.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2684
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2685
    line := (self listEntryAt:lineNr) string. 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2686
    ((line startsWith:'-') and:[line size < 2 or:[line second isDigit not]])
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2687
    ifTrue:[^ nil].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2688
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2689
    nm := line asCollectionOfWords first.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2690
    idx := object class allInstVarNames indexOf:nm.
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2691
    idx == 0 ifTrue:[^ nil].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2692
    ^ idx.    
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2693
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2694
    [
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2695
        line := self listEntryAt:firstRealIndex. 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2696
        (line startsWith:'-') and:[line size < 2 or:[line second isDigit not]]
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2697
    ] whileTrue:[
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2698
        firstRealIndex := firstRealIndex + 1.
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2699
        idx := idx - 1.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2700
    ].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2701
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2702
    cls := object class.
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2703
    baseCls := self baseInspectedObjectClass.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2704
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2705
    nNamedInstvarsShown := cls instSize.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2706
    "/ only the namedInstvars below baseInspectedObjectClass
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2707
    "/ are shown ...
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2708
    (cls includesBehavior:baseCls) ifTrue:[
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2709
        nNamedInstvarsShown := nNamedInstvarsShown - baseCls instSize.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2710
    ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2711
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2712
    idx <= nNamedInstvarsShown ifTrue:[
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2713
        ^ idx + self baseInspectedObjectClass instSize.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2714
    ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2715
    ^ nil "/ indexed instvar or other selected
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2716
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2717
    "Modified: / 20-07-2012 / 11:11:10 / cg"
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2718
!
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2719
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2720
keyIndexForLine:lineNr
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2721
    "helper - return the index of the key-list;
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2722
     nil, if self or a namedInstVar is selected."
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2723
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2724
    |idx nNamedInstvarsShown nExtraNamedInstvarsShown cls baseCls firstRealIndex line|
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2725
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2726
    lineNr isNil ifTrue:[^ nil].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2727
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2728
    firstRealIndex := 1.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2729
    idx := lineNr.
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2730
    self hasSelfEntry ifTrue:[
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2731
        (lineNr == 1 or:[lineNr isNil]) ifTrue:[
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2732
            ^ nil "/ self selected
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2733
        ].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2734
        idx := idx - 1.
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2735
        firstRealIndex := firstRealIndex + 1.
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2736
    ].
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2737
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2738
    [line := self listEntryAt:firstRealIndex. 
5881
ef6791c315ab oops - out of bounds error fixed
Claus Gittinger <cg@exept.de>
parents: 5845
diff changeset
  2739
     line notNil
ef6791c315ab oops - out of bounds error fixed
Claus Gittinger <cg@exept.de>
parents: 5845
diff changeset
  2740
     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
  2741
    ] whileTrue:[
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2742
        firstRealIndex := firstRealIndex + 1.
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2743
        idx := idx - 1.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2744
    ].
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2745
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2746
    cls := object class.
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2747
    baseCls := self baseInspectedObjectClass.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2748
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2749
    nNamedInstvarsShown := cls instSize.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2750
    "/ only the namedInstvars below baseInspectedObjectClass
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2751
    "/ are shown ...
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2752
    (cls includesBehavior:baseCls) ifTrue:[
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2753
        nNamedInstvarsShown := nNamedInstvarsShown - baseCls instSize.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2754
    ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2755
    nExtraNamedInstvarsShown := self extraNamedFields size.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2756
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2757
    idx <= (nNamedInstvarsShown+nExtraNamedInstvarsShown) ifTrue:[
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2758
        ^ nil "/ named instVar selected.
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2759
    ].
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2760
    ^ idx - (nNamedInstvarsShown+nExtraNamedInstvarsShown).
2193
3d7b1044e8c8 fixed access to namedInstvars
Claus Gittinger <cg@exept.de>
parents: 2188
diff changeset
  2761
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2762
    "Modified: / 16-05-2012 / 17:54:34 / cg"
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2763
!
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2764
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2765
listEntryAt:lineNr
11514
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2766
    |entry|
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2767
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2768
    entry := listView at:lineNr.
Claus Gittinger <cg@exept.de>
parents: 11511
diff changeset
  2769
    entry isNil ifTrue:[^ entry].
11763
f3f1b32db84b changed: #listEntryAt:
Claus Gittinger <cg@exept.de>
parents: 11749
diff changeset
  2770
    ^ entry perform:#string ifNotUnderstood:[ entry printString ].
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2771
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2772
    "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
  2773
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2774
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2775
namedFieldAt:idx
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2776
    ^ object instVarAt:idx
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2777
!
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2778
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2779
namedFieldAt:idx put:newValue
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2780
    ^ object instVarAt:idx put:newValue
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2781
!
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2782
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2783
namedFieldList 
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2784
    "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
  2785
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  2786
    |aList cls baseCls offset|
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2787
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2788
    cls := object class.
2447
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2789
    baseCls := self baseInspectedObjectClass.
95055cf58b2e checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2446
diff changeset
  2790
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  2791
    aList := OrderedCollection new.
3338
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  2792
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  2793
    aList addAll:(cls allInstVarNames).
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  2794
    offset := 0.
8962
b0e0907c0bf7 changed:6 methods
Claus Gittinger <cg@exept.de>
parents: 8908
diff changeset
  2795
    (cls includesBehavior:baseCls) ifTrue:[
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  2796
        "/ hide some stuff
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  2797
        offset := self baseInspectedObjectClass instSize.
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  2798
        aList := aList copyFrom:(offset + 1).
3351
64cdbec2dd8e text display
Claus Gittinger <cg@exept.de>
parents: 3349
diff changeset
  2799
    ].
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2800
    aList := aList 
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2801
                keysAndValuesCollect:[:idx :nm |
11858
2da1fc1e7d22 changed: #namedFieldList
Stefan Vogel <sv@exept.de>
parents: 11846
diff changeset
  2802
                    self listEntryForName:nm value:(object instVarAt:idx+offset)
11629
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2803
                ].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2804
    sortOrder == #alphabetical ifTrue:[
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2805
        aList sort:[:a :b | a string < b string].
b45b48667096 changed: #editMenu
Claus Gittinger <cg@exept.de>
parents: 11603
diff changeset
  2806
    ].
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2807
    ^ aList
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  2808
11715
efa49c4a4f56 changed: #namedFieldList
Claus Gittinger <cg@exept.de>
parents: 11702
diff changeset
  2809
    "Modified: / 29-07-2012 / 12:11:06 / cg"
6372
d59bab947578 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6283
diff changeset
  2810
!
d59bab947578 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6283
diff changeset
  2811
11578
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2812
numIndexedFields
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2813
    ^ inspectedObject basicSize
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2814
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2815
    "Created: / 13-06-2012 / 10:13:24 / cg"
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2816
!
f750a9c9fb7a +show all (menu)
Claus Gittinger <cg@exept.de>
parents: 11576
diff changeset
  2817
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2818
pseudoFieldNames
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2819
    "return a list of names to show in the selectionList.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2820
     Leave hasMore as true, if a '...' entry should be added."
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2821
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2822
    ^ self pseudoFieldNamesWithIndexed: object class isVariable
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2823
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2824
    "Modified: / 06-06-2012 / 11:56:56 / cg"
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2825
!
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2826
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2827
pseudoFieldNamesWithIndexed:withIndexed
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2828
    "return a list of names to show in the selectionList.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2829
     Leave hasMore as true, if a '...' entry should be added."
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2830
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2831
    |list cls|
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2832
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2833
    cls := object class.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2834
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2835
    list := OrderedCollection new.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2836
    list add:'-' , 'self' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2837
    list add:'-' , 'local messages' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2838
    "/ list add:'-' , 'inherited messages' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2839
    list add:'-' , 'all messages' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2840
    list add:'-' , 'hash' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2841
    list add:'-' , 'identityHash' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2842
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2843
    withIndexed ifTrue:[
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2844
        list add:'-' , 'basicSize' allItalic, (self valueStringInListEntryForValue:object basicSize).
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2845
    ].
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2846
    object isCollection ifTrue:[
11909
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  2847
        (cls whichClassImplements:#size) ~~ (cls whichClassImplements:#basicSize) ifTrue:[
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  2848
            Error handle:[:ex |
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  2849
            ] do:[
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  2850
                "/ Iterator has trouble
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  2851
                list add:'-' , 'size' allItalic , (self valueStringInListEntryForValue:object size).
9ea1b7aa98dc changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11895
diff changeset
  2852
            ].
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2853
        ]
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2854
    ].
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2855
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2856
    cls hasImmediateInstances ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2857
        object dependents notEmptyOrNil ifTrue:[
11895
aedb513e0d33 changed: #pseudoFieldNamesWithIndexed:
Claus Gittinger <cg@exept.de>
parents: 11893
diff changeset
  2858
            list add:'-' , 'dependents' allItalic, (self valueStringInListEntryForValue:object dependents size).
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2859
        ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2860
    ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2861
    cls instSize > 0 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2862
        list add:'-' , 'all inst vars' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2863
    ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2864
    (withIndexed and:[self showAllIndexedVarsInFieldList]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2865
        list add:'-' , 'all indexed vars' allItalic.
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2866
    ].
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2867
    ^ list
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2868
11579
0c14b5d9c07f added: #valueStringInListEntryForValue:
Claus Gittinger <cg@exept.de>
parents: 11578
diff changeset
  2869
    "Modified: / 13-06-2012 / 12:10:16 / cg"
9370
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2870
!
Claus Gittinger <cg@exept.de>
parents: 9367
diff changeset
  2871
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2872
setAcceptAction
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2873
    "set the codeViews accept action"
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2874
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2875
    |idx acceptAction sel|
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2876
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2877
    acceptAction := [:theText | self doAccept:theText asString].
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2878
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2879
    idx := self theSingleSelectionIndex.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2880
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2881
    (idx isNil 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2882
    or:[ object class hasImmediateInstances])
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2883
    ifTrue:[
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2884
        acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2885
    ] ifFalse:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2886
        sel := self listEntryAt:idx.
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2887
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  2888
        (sel startsWith:'-all') ifTrue:[
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2889
            acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2890
        ].
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2891
        (sel startsWith:'-hash') ifTrue:[
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2892
            acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2893
        ].
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2894
        (sel startsWith:'-basicSize') ifTrue:[
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2895
            acceptAction := nil.
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2896
        ].
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2897
        (sel startsWith:'-size') ifTrue:[
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2898
            acceptAction := nil.
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2899
        ].
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2900
        (sel startsWith:'-identityHash') ifTrue:[
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2901
            acceptAction := nil.
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2902
        ].
3634
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  2903
        (sel startsWith:'-dependents') ifTrue:[
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  2904
            acceptAction := nil.
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  2905
        ].
5134
536fbfead179 source field for methods
Claus Gittinger <cg@exept.de>
parents: 4999
diff changeset
  2906
        (sel startsWith:'-source') ifTrue:[
536fbfead179 source field for methods
Claus Gittinger <cg@exept.de>
parents: 4999
diff changeset
  2907
            acceptAction := nil.
536fbfead179 source field for methods
Claus Gittinger <cg@exept.de>
parents: 4999
diff changeset
  2908
        ].
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2909
    ].
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2910
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2911
    workspace acceptAction:acceptAction.
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2912
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  2913
    "Modified: / 06-06-2012 / 11:57:27 / cg"
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2914
!
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  2915
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2916
setDoItAction
542
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  2917
    "set the codeViews doit action"
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  2918
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  2919
    workspace 
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2920
        doItAction:[:theCode |
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2921
            |evaluator|
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2922
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2923
            (evaluator := object class evaluatorClass)
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2924
            notNil ifTrue:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2925
                evaluator
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2926
                    evaluate:theCode 
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2927
                    in:nil 
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2928
                    receiver:object 
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2929
                    notifying:workspace 
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2930
                    logged:true 
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2931
                    ifFail:nil
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2932
            ] ifFalse:[
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2933
                'objects class provides no evaluator'
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2934
            ]
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2935
        ].
542
12d3bf714076 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 531
diff changeset
  2936
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2937
    object class evaluatorClass isNil ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2938
        workspace doItAction:nil.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  2939
        workspace acceptAction:nil.
1270
3dc841708edd disable accept/doIt, if instances class provides no evaluator
Claus Gittinger <cg@exept.de>
parents: 1235
diff changeset
  2940
    ]
3dc841708edd disable accept/doIt, if instances class provides no evaluator
Claus Gittinger <cg@exept.de>
parents: 1235
diff changeset
  2941
3dc841708edd disable accept/doIt, if instances class provides no evaluator
Claus Gittinger <cg@exept.de>
parents: 1235
diff changeset
  2942
    "Modified: 1.8.1997 / 21:47:09 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2943
!
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2944
3884
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2945
showAllIndexedVarsInFieldList
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2946
    ^ true
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2947
!
4329e6c615a5 dont crash in set showing all indexed vars
james
parents: 3874
diff changeset
  2948
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2949
theSingleSelectionIndex
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2950
    "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
  2951
     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
  2952
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2953
    |idx|
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2954
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2955
    idx := selectionIndex.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2956
    idx isCollection ifTrue:[
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2957
        selectionIndex size == 1 ifTrue:[
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2958
            ^ selectionIndex first
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2959
        ].
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2960
        ^ nil
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2961
    ].
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2962
    ^ selectionIndex
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2963
!
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  2964
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2965
valueAtLine:lineNr
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2966
    "helper - return the value of the selected entry"
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2967
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2968
    |idx l val|
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  2969
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  2970
    (self hasSelfEntry
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2971
    and:[lineNr == 1 or:[lineNr isNil]]) ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2972
        ^ object
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2973
    ].
2235
ce49947e61f7 migrate instvars 'inspectedObject' to 'object'
Claus Gittinger <cg@exept.de>
parents: 2193
diff changeset
  2974
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2975
    ((l := self listEntryAt:lineNr) startsWith:$-) ifTrue:[
11839
8eda3c0dda51 changed: #valueAtLine:
Claus Gittinger <cg@exept.de>
parents: 11835
diff changeset
  2976
        (l ~= '-' 
8eda3c0dda51 changed: #valueAtLine:
Claus Gittinger <cg@exept.de>
parents: 11835
diff changeset
  2977
        and:[(l at:2) isSeparator not
8eda3c0dda51 changed: #valueAtLine:
Claus Gittinger <cg@exept.de>
parents: 11835
diff changeset
  2978
        and:[(l at:2) isDigit not "negative number"]]) ifTrue:[
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  2979
            ^ self valueForSpecialLine:l
3645
d88ce5dea1ce *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3639
diff changeset
  2980
        ].
3338
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  2981
    ].
c2691e356f51 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3318
diff changeset
  2982
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2983
    "/ a named instVar ?
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2984
    idx := self instVarIndexForLine:lineNr.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2985
    idx notNil ifTrue:[
3432
087493c18c74 class based exceptions - no longer need to send #breakPointSígnal
Claus Gittinger <cg@exept.de>
parents: 3428
diff changeset
  2986
        BreakPointInterrupt catch:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  2987
            ^ self namedFieldAt:idx
2800
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  2988
        ]
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2989
    ].
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  2990
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2991
    "/ an extra named field ?
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2992
    idx := self extraNamedVarIndexForLine:lineNr.
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2993
    idx notNil ifTrue:[
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2994
        BreakPointInterrupt catch:[
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2995
            val := ((self extraNamedFields) at:idx) value.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2996
            val isBlock ifTrue:[ val := val value ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  2997
            ^ val
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2998
        ]
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  2999
    ].
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3000
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3001
    "/ an indexed instVar ?
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3002
    idx := self keyIndexForLine:lineNr.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3003
    idx notNil ifTrue:[
3432
087493c18c74 class based exceptions - no longer need to send #breakPointSígnal
Claus Gittinger <cg@exept.de>
parents: 3428
diff changeset
  3004
        BreakPointInterrupt catch:[
2800
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  3005
            ^ self indexedValueAtIndex:idx.
4e5792ade7aa menu fix
Claus Gittinger <cg@exept.de>
parents: 2724
diff changeset
  3006
        ]
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3007
    ].
644
aab7d4f7c8c3 allow hiding self; added a label
Claus Gittinger <cg@exept.de>
parents: 621
diff changeset
  3008
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3009
    "/ nope
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3010
    ^ nil
613
048942111c7b checkin from browser
Claus Gittinger <cg@exept.de>
parents: 593
diff changeset
  3011
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3012
    "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
  3013
!
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3014
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3015
valueAtLine:lineNr put:newValue
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3016
    |idx|
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3017
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3018
    idx := self instVarIndexForLine:selectionIndex.
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3019
    idx notNil ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3020
        self namedFieldAt:idx put:newValue.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3021
        ^ self.
2271
0cf238543cb1 fixed and improved fieldNameList generation & use.
Claus Gittinger <cg@exept.de>
parents: 2235
diff changeset
  3022
    ].
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3023
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3024
    idx := self keyIndexForLine:selectionIndex.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3025
    idx notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3026
        self indexedValueAtIndex:idx put:newValue.
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3027
        ^ self
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3028
    ].
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3029
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3030
    ^ self "/ self selected - dont store
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3031
!
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3032
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3033
valueForSpecialLine:line
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3034
    |idx fieldEntry extraAttributes fields|
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3035
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3036
    extraAttributes := object inspectorExtraAttributes.
8664
c6afed1e4bfa changed #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 8653
diff changeset
  3037
    (extraAttributes notNil and:[ extraAttributes includesKey:line ]) ifTrue:[
7297
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  3038
        ^ (extraAttributes at:line) value 
ea3614b585e4 drag & drop;
Claus Gittinger <cg@exept.de>
parents: 7054
diff changeset
  3039
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3040
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3041
    idx := self derivedFieldNames findFirst:[:l | l string = line string ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3042
    idx ~~ 0 ifTrue:[
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3043
        "a lot of backward compatibility crab which has to go away..."
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3044
        fields := self derivedFields.
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3045
        (fields isKindOf:Dictionary) ifTrue:[
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3046
            fieldEntry := fields associationAt:line string "idx".
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3047
        ] ifFalse:[
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3048
            fieldEntry := fields associationAt:idx.
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3049
        ].
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3050
    ] ifFalse:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3051
        idx := self extraNamedFieldNames indexOf:line.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3052
        idx ~~ 0 ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3053
            fieldEntry := self extraNamedFields at:idx.
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3054
        ].
6840
52d3f2cbf130 extraNamedField support
Claus Gittinger <cg@exept.de>
parents: 6823
diff changeset
  3055
    ].
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3056
    fieldEntry notNil ifTrue:[
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3057
        fieldEntry isAssociation ifTrue:[
11419
a96a34326a6a changed: #valueForSpecialLine:
Claus Gittinger <cg@exept.de>
parents: 11276
diff changeset
  3058
            ^ fieldEntry value value
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3059
        ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3060
        ^ fieldEntry at:2.
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3061
    ].
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3062
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3063
    (line startsWith:'-self') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3064
        ^ object
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3065
    ].
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3066
    (line startsWith:'-basicSize') ifTrue:[
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3067
        ^ object basicSize
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3068
    ].
9504
196c6f7d3cc4 changed: #valueForSpecialLine:
Stefan Vogel <sv@exept.de>
parents: 9396
diff changeset
  3069
    (line startsWith:'-size') ifTrue:[
196c6f7d3cc4 changed: #valueForSpecialLine:
Stefan Vogel <sv@exept.de>
parents: 9396
diff changeset
  3070
        ^ object size
196c6f7d3cc4 changed: #valueForSpecialLine:
Stefan Vogel <sv@exept.de>
parents: 9396
diff changeset
  3071
    ].
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3072
    (line startsWith:'-hash') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3073
        ^ object hash
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3074
    ].
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3075
    (line startsWith:'-identityHash') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3076
        ^ object identityHash
3525
761785907491 checkin from browser
martin
parents: 3432
diff changeset
  3077
    ].
3634
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  3078
    (line startsWith:'-dependents') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3079
        ^ object dependents
3634
db094dd598f7 -dependents
Claus Gittinger <cg@exept.de>
parents: 3608
diff changeset
  3080
    ].
3868
77040d8d3526 all indexed vars
Claus Gittinger <cg@exept.de>
parents: 3657
diff changeset
  3081
    (line startsWith:'-all') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3082
        ^ object
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3083
    ].
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3084
    (line startsWith:'-local messages') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3085
        ^ object
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3086
    ].
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3087
    (line startsWith:'-inherited messages') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3088
        ^ object
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3089
    ].
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3090
    (line startsWith:'-all messages') ifTrue:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3091
        ^ object
8726
f0230df32944 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8699
diff changeset
  3092
    ].
3608
aebf9f1eb30e all inst vars
Claus Gittinger <cg@exept.de>
parents: 3567
diff changeset
  3093
3526
d8f3082ea1d7 Remove unused vars
Stefan Vogel <sv@exept.de>
parents: 3525
diff changeset
  3094
    self error:'unknown special line'.
3349
b9a9138f8017 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3338
diff changeset
  3095
6823
40d460dee8df *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6491
diff changeset
  3096
    "Created: / 31-10-2001 / 09:17:45 / cg"
11565
7ad4468defb7 changed:
Claus Gittinger <cg@exept.de>
parents: 11551
diff changeset
  3097
    "Modified: / 06-06-2012 / 11:57:54 / cg"
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3098
! !
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3099
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3100
!InspectorView methodsFor:'queries'!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3101
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3102
canInspect:anObject
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3103
    ^ anObject inspectorClass == self class
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3104
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3105
5925
6502b73091ab *** empty log message ***
ca
parents: 5913
diff changeset
  3106
compilerClass
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3107
    ^ object class compilerClass
5925
6502b73091ab *** empty log message ***
ca
parents: 5913
diff changeset
  3108
!
6502b73091ab *** empty log message ***
ca
parents: 5913
diff changeset
  3109
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3110
dereferenceValueHolders
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3111
    ^ dereferenceValueHolders ? false
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3112
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3113
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3114
labelFor:anObject
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3115
    "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
  3116
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3117
    |lbl|
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3118
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3119
    (self class == InspectorView
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3120
    and:[anObject inspectorClass ~~ InspectorView]) ifTrue:[
6130
8f6c6203e608 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6034
diff changeset
  3121
        lbl := 'BasicInspector on: '
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3122
    ] ifFalse:[
6130
8f6c6203e608 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6034
diff changeset
  3123
        lbl := 'Inspector on: '
5958
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3124
    ].
10321
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3125
    ^ (self class classResources string:lbl)
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3126
    , (self class commonLabelFor:anObject)
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3127
Claus Gittinger <cg@exept.de>
parents: 10207
diff changeset
  3128
    "Modified: / 15-07-2011 / 16:22:05 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3129
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3130
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3131
labelNameFor:anObject
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3132
    "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
  3133
     Simply returns the className or name of anObjects class"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3134
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
  3135
    ^ self class labelNameFor:anObject
5958
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3136
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3137
    "
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3138
     1234 inspect
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3139
     true inspect
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3140
     $a inspect
751d314f92c1 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5925
diff changeset
  3141
    "
11658
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
  3142
b431692d3cba comment/format in: #labelFor:
Claus Gittinger <cg@exept.de>
parents: 11644
diff changeset
  3143
    "Modified: / 25-07-2012 / 10:15:06 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3144
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3145
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3146
selectedKeyName
11910
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3147
    |sel|
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3148
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3149
    selectionIndex notNil ifTrue:[
11910
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3150
        sel := listView listAt:selectionIndex.
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3151
        sel notNil ifTrue:[
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3152
            sel := sel string.
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3153
            sel := sel copyUpTo:(Character space).
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3154
            ^ sel
6087f8d5d9b4 comment/format in: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11909
diff changeset
  3155
        ].
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3156
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3157
    ^ nil
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3158
!
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3159
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3160
suppressPseudoSlots
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3161
    ^ suppressPseudoSlots ? false
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3162
! !
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3163
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3164
!InspectorView methodsFor:'selection'!
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3165
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3166
selection:lineNr
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3167
    self showSelection:lineNr
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3168
!
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3169
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3170
showSelection:lineNr
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3171
    "user clicked on an instvar - show value in workspace"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3172
9672
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3173
    |listSize val|
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3174
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3175
    listSize := listView list size.
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3176
    listSize == 0 ifTrue:[^ self].
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3177
bad886ee0f07 changed: #showSelection:
Claus Gittinger <cg@exept.de>
parents: 9651
diff changeset
  3178
    (hasMore and:[lineNr == listSize]) ifTrue:[
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3179
        "clicked on the '...' entry"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3180
        self showMore.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3181
        listView setSelection:lineNr.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3182
    ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3183
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3184
    self hasSelfEntry ifTrue:[
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3185
        (self hasSelfEntry and:[lineNr == 1]) ifTrue:[
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3186
            "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
  3187
            self reinspect.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3188
        ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3189
    ].
10521
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3190
    selectionIndex := selectedLine := lineNr.
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3191
    val := self selection.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3192
    self showValue:val.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3193
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3194
    self setAcceptAction.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3195
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3196
    "Modified: / 03-08-2006 / 14:26:22 / cg"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3197
!
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3198
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3199
showValue:someValue 
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3200
    "user clicked on an entry - show value in workspace"
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3201
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3202
    |s|
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3203
9651
cca26b954d45 changed:
Claus Gittinger <cg@exept.de>
parents: 9648
diff changeset
  3204
    self "topView" withWaitCursorDo:[
11946
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3205
        [
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3206
            s := self displayStringForValue:someValue.
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3207
        ] valueWithWatchDog:[
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3208
            s := someValue classNameWithArticle
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3209
        ] afterMilliseconds:100.
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3210
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3211
        s = workspace selectionAsString ifFalse:[
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3212
            workspace replace:s.
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3213
        ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3214
    ].
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3215
11946
5f9c69ccc6d8 changed: #showValue:
Claus Gittinger <cg@exept.de>
parents: 11916
diff changeset
  3216
    "Modified: / 28-10-2012 / 11:03:04 / cg"
8653
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3217
! !
72f9c682ba3e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8635
diff changeset
  3218
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3219
!InspectorView methodsFor:'user interaction'!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3220
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3221
doAccept:theText
11551
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3222
    |sel newValue fieldNameList|
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3223
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3224
    sel := self listEntryAt:(self theSingleSelectionIndex).
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3225
    (sel startsWith:'-all') ifTrue:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3226
        workspace flash.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3227
        ^ self.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3228
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3229
4642
ee63c37d9d3c Convert Object>>errorSignal -> Error
Stefan Vogel <sv@exept.de>
parents: 4314
diff changeset
  3230
    Error handle:[:ex |
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3231
        workspace flash
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3232
    ] do:[
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3233
        newValue := object class evaluatorClass 
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3234
                       evaluate:theText
9367
Claus Gittinger <cg@exept.de>
parents: 9349
diff changeset
  3235
                       receiver:object 
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3236
                       notifying:workspace.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3237
4095
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3238
        self dereferenceValueHolders ifTrue:[
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3239
            (self valueAtLine:selectionIndex) value:newValue
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3240
        ] ifFalse:[
5bd36b14723d labels; added suppressPseudoVars & dereferenceValueHolders
Claus Gittinger <cg@exept.de>
parents: 3884
diff changeset
  3241
            self valueAtLine:selectionIndex put:newValue.
11551
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3242
        ].
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3243
        "/ update the fieldList...
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3244
        fieldNameList := self fieldList.                               
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3245
        hasMore ifTrue:[
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3246
            fieldNameList add:' ... '
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3247
        ].
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3248
        listView contents:fieldNameList.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3249
    ]
11511
95cda90d64c8 nice name list
Claus Gittinger <cg@exept.de>
parents: 11419
diff changeset
  3250
11551
5d6cd56f9dcf changed: #doAccept:
Claus Gittinger <cg@exept.de>
parents: 11548
diff changeset
  3251
    "Modified: / 04-06-2012 / 18:16:29 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3252
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3253
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3254
doCopyKey
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3255
    "put the instVar-name into the text-copy-buffer"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3256
9378
07c0ca7444b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9375
diff changeset
  3257
    |nm selIdx|
07c0ca7444b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9375
diff changeset
  3258
07c0ca7444b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9375
diff changeset
  3259
    (selIdx := self theSingleSelectionIndex) notNil ifTrue:[
11916
b64155bfd864 changed: #doCopyKey
Claus Gittinger <cg@exept.de>
parents: 11910
diff changeset
  3260
        nm := self selectedKeyName.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3261
        nm notNil ifTrue:[
6034
7f7d4b7362dd set selection interface changed
ca
parents: 5958
diff changeset
  3262
            self setClipboardText:(nm asString)
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3263
        ]
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3264
    ]
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3265
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3266
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3267
doInspect:basic
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3268
    "user selected inspect-menu entry"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3269
10207
e2968eb0d08e changed: #doInspect: to open instvars within same Inspector2 window
vrany
parents: 9794
diff changeset
  3270
    |objectToInspect app |
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3271
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  3272
    objectToInspect := self selectedField.
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  3273
    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
  3274
        (basic == #new and:[NewInspector::NewInspectorView notNil]) ifTrue:[
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3275
            NewInspector::NewInspectorView inspect:objectToInspect
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3276
        ] ifFalse:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3277
            basic ifTrue:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3278
                objectToInspect basicInspect
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3279
            ] ifFalse:[
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3280
                "/ 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
  3281
                "/ 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
  3282
                "/ 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
  3283
"/                "HACK"
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3284
"/                app := (self topView perform:#application ifNotUnderstood: [nil]).
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3285
"/                (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
  3286
"/                    app inspect: objectToInspect
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3287
"/                ] ifFalse:[
10207
e2968eb0d08e changed: #doInspect: to open instvars within same Inspector2 window
vrany
parents: 9794
diff changeset
  3288
                    objectToInspect inspect
10424
9d7d0c28f504 only follow (dive in) with double click;
Claus Gittinger <cg@exept.de>
parents: 10321
diff changeset
  3289
"/                ]
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3290
            ]
8025
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  3291
        ].
33e306c26e0f Handle keys: Ctrl-i, Ctrl-B
Stefan Vogel <sv@exept.de>
parents: 7975
diff changeset
  3292
    ].
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3293
10207
e2968eb0d08e changed: #doInspect: to open instvars within same Inspector2 window
vrany
parents: 9794
diff changeset
  3294
    "Modified: / 06-07-2011 / 15:58:55 / jv"
11702
d67763d80c24 added: #selectedField
Claus Gittinger <cg@exept.de>
parents: 11660
diff changeset
  3295
    "Modified: / 27-07-2012 / 22:43:11 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3296
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3297
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3298
doUpdate
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3299
    self reinspect
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3300
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3301
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3302
monitor:anInstVarName
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3303
    "start a monitoring process, showing the given instVar
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3304
     in regular intervals."
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3305
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3306
    |ivName|
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3307
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3308
    (ivName := anInstVarName) isInteger ifTrue:[
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3309
        ivName := anInstVarName printString
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3310
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3311
    listView selectElement:ivName.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3312
    self doStartMonitor
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3313
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3314
    "Created: / 1.3.1996 / 19:31:45 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3315
    "Modified: / 12.2.1999 / 16:05:47 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3316
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3317
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3318
selection
9375
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3319
    "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
  3320
     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
  3321
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3322
    |idx val|
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3323
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3324
    idx := self theSingleSelectionIndex.
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3325
    idx isNil ifTrue:[^ nil].
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3326
f885ea13e694 allow multiSelect in dictionary inspector (for removeKey)
Claus Gittinger <cg@exept.de>
parents: 9370
diff changeset
  3327
    val := self valueAtLine:idx.
6850
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3328
    self dereferenceValueHolders ifTrue:[
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3329
        "workspace-variable-inspection"
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3330
        val := val value
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3331
    ].
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3332
    ^ val
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3333
1dd4d6518d91 extra field support
Claus Gittinger <cg@exept.de>
parents: 6840
diff changeset
  3334
    "Modified: / 03-08-2006 / 14:27:02 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3335
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3336
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3337
showLast
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3338
    "user clicked on an instvar - show value in workspace"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3339
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3340
    |lastIdx|
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3341
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3342
    lastIdx := listView list size.
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3343
    lastIdx ~~ 0 ifTrue:[
8908
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3344
        self showSelection:lastIdx.
04406d5f9acd *** empty log message ***
Michael Beyl <mb@exept.de>
parents: 8907
diff changeset
  3345
        listView selection:lastIdx.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3346
    ]
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3347
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3348
    "Created: 28.6.1996 / 15:06:38 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3349
    "Modified: 18.3.1997 / 18:22:54 / cg"
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3350
!
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3351
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3352
tryToSelectKeyNamed:aString
11599
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3353
    |list idx aStringWithSpace|
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3354
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3355
    aString isEmptyOrNil ifTrue:[^ self].
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3356
11603
6f7540a1e057 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11599
diff changeset
  3357
    aStringWithSpace := aString string,' '.
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3358
5558
8b9d99f714d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 5498
diff changeset
  3359
    list := listView list.
8b9d99f714d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 5498
diff changeset
  3360
    list notNil ifTrue:[
11603
6f7540a1e057 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11599
diff changeset
  3361
        (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
  3362
            listView selection:idx
8b9d99f714d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 5498
diff changeset
  3363
        ].
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3364
    ].
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3365
11599
06b7c6cce561 changed: #tryToSelectKeyNamed:
Claus Gittinger <cg@exept.de>
parents: 11594
diff changeset
  3366
    "Created: / 16-11-2001 / 13:48:51 / cg"
3874
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3367
! !
ed3a652e5ce0 all indexed vars for dictionaries
Claus Gittinger <cg@exept.de>
parents: 3869
diff changeset
  3368
4268
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3369
!InspectorView methodsFor:'workspace protocol'!
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3370
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3371
modified:aBoolean
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3372
    ^ workspace modified:aBoolean
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3373
!
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3374
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3375
saveAs:file doAppend:doAppend
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3376
    workspace saveAs:file doAppend:doAppend
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3377
! !
0fe3e4a82ddf more textView protocol (for Workspace)
Claus Gittinger <cg@exept.de>
parents: 4197
diff changeset
  3378
871
a29021918ec5 fixed openOn:monitor:
Claus Gittinger <cg@exept.de>
parents: 742
diff changeset
  3379
!InspectorView class methodsFor:'documentation'!
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3380
10521
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3381
version
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
  3382
    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.293 2012-11-21 13:35:59 cg Exp $'
10521
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3383
!
9218a2f4a6d1 Oops, fixes previous (messed) revision (changed: #showSelection:)
vrany
parents: 10520
diff changeset
  3384
8868
1fd94adeda59 changed: #setInitialSelection
Claus Gittinger <cg@exept.de>
parents: 8800
diff changeset
  3385
version_CVS
12063
Claus Gittinger <cg@exept.de>
parents: 12031
diff changeset
  3386
    ^ '$Header: /cvs/stx/stx/libtool/InspectorView.st,v 1.293 2012-11-21 13:35:59 cg Exp $'
200
01ce3d3636d5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 188
diff changeset
  3387
! !