NewInspectorView.st
changeset 32 9dfc1899e849
child 39 03af455029eb
equal deleted inserted replaced
31:0f95ba9204f6 32:9dfc1899e849
       
     1 "{ NameSpace: NewInspector }"
       
     2 
       
     3 VariableVerticalPanel subclass:#InspectorView
       
     4 	instanceVariableNames:'inspectorView userSpace workSpace inspectedObject'
       
     5 	classVariableNames:''
       
     6 	poolDictionaries:''
       
     7 	category:'Inspector'
       
     8 !
       
     9 
       
    10 !InspectorView class methodsFor:'documentation'!
       
    11 
       
    12 examples
       
    13 
       
    14 "
       
    15 NewInspector::InspectorView inspect:(Array new:5)
       
    16 "
       
    17 ! !
       
    18 
       
    19 !InspectorView class methodsFor:'instance creation'!
       
    20 
       
    21 inspect:anInstance
       
    22     "start inspector on an instance
       
    23     "
       
    24     |top isp|
       
    25 
       
    26     top := StandardSystemView new extent:600@400.
       
    27     isp := InspectorView origin:0.0@0.0  corner:1.0@1.0 in:top.
       
    28     isp inspect:anInstance.
       
    29     top open.
       
    30 
       
    31   ^ isp.
       
    32 ! !
       
    33 
       
    34 !InspectorView methodsFor:'accessing'!
       
    35 
       
    36 inspect:anInstance
       
    37 
       
    38     inspectedObject := anInstance.
       
    39     self topView label:(inspectedObject class name asString).
       
    40     inspectorView inspect:anInstance.
       
    41     self updateWorkSpace.
       
    42 
       
    43 ! !
       
    44 
       
    45 !InspectorView methodsFor:'initialization'!
       
    46 
       
    47 initialize
       
    48     |view|
       
    49 
       
    50     super initialize.
       
    51 
       
    52     view := SimpleView origin:0.0 @ 0.0 corner:1.0 @ 0.5 in:self.
       
    53 
       
    54     inspectorView := InspectorPanelView origin:0.0 @ 0.0 corner:1.0 @ 1.0 in:view.
       
    55     workSpace     := Workspace          origin:0.0 @ 1.0 corner:1.0 @ 1.0 in:view.
       
    56     userSpace     := Workspace          origin:0.0 @ 0.5 corner:1.0 @ 1.0 in:self.
       
    57 
       
    58     workSpace     topInset:-18.
       
    59     inspectorView bottomInset:18.
       
    60 
       
    61     userSpace acceptAction:[:theText|inspectorView accept:theText notifying:workSpace].
       
    62     workSpace acceptAction:[:theText|inspectorView accept:theText notifying:workSpace].
       
    63 
       
    64     userSpace   doItAction:[:theCode|inspectorView doIt:theCode notifying:workSpace].
       
    65     workSpace   doItAction:[:theCode|inspectorView doIt:theCode notifying:workSpace].
       
    66 
       
    67     inspectorView action:[:el|self updateWorkSpace].
       
    68 
       
    69     inspectorView valueChangedAction:[:el||lbl|
       
    70         workSpace list:(Array with:(el displayString)).
       
    71     ].
       
    72 ! !
       
    73 
       
    74 !InspectorView methodsFor:'update'!
       
    75 
       
    76 updateWorkSpace
       
    77     "update the workSpace
       
    78     "
       
    79     workSpace list:(Array with:(inspectorView selectedInstanceVar displayString)).
       
    80 ! !
       
    81 
       
    82 !InspectorView class methodsFor:'documentation'!
       
    83 
       
    84 version
       
    85     ^ '$Header$'
       
    86 ! !