Tools__Inspector2.st
author vrany
Sat, 23 Jul 2011 12:41:37 +0200
changeset 10379 489f71d5711e
parent 10322 4c79efcd1926
child 10392 e4e94b17c0c2
permissions -rw-r--r--
Added "browse class" toolbar button to Inspector2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9996
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     1
"
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     2
 COPYRIGHT (c) 2006 by eXept Software AG
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     3
	      All Rights Reserved
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     4
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     5
 This software is furnished under a license and may be used
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     6
 only in accordance with the terms of that license and with the
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     8
 be provided or otherwise made available to, or used by, any
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
     9
 other person.  No title to or ownership of the software is
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    10
 hereby transferred.
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    11
"
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    12
"{ Package: 'stx:libtool' }"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    13
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    14
"{ NameSpace: Tools }"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    15
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    16
ApplicationModel subclass:#Inspector2
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
    17
	instanceVariableNames:'tabViewAspect navigationHistoryHolder navigationStateAspect
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
    18
		browser'
10311
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
    19
	classVariableNames:'LastExtent'
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    20
	poolDictionaries:''
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    21
	category:'Interface-Inspector 2'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    22
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    23
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    24
Object subclass:#NavigationState
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    25
	instanceVariableNames:'theObject index tabs selectionIndex displayString'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    26
	classVariableNames:''
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    27
	poolDictionaries:''
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    28
	privateIn:Inspector2
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    29
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    30
9996
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    31
!Inspector2 class methodsFor:'documentation'!
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    32
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    33
copyright
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    34
"
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    35
 COPYRIGHT (c) 2006 by eXept Software AG
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    36
	      All Rights Reserved
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    37
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    38
 This software is furnished under a license and may be used
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    39
 only in accordance with the terms of that license and with the
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    40
 inclusion of the above copyright notice.   This software may not
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    41
 be provided or otherwise made available to, or used by, any
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    42
 other person.  No title to or ownership of the software is
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    43
 hereby transferred.
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    44
"
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
    45
! !
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    46
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    47
!Inspector2 class methodsFor:'interface specs'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    48
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    49
windowSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    50
    "This resource specification was automatically generated
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    51
     by the UIPainter of ST/X."
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    52
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    53
    "Do not manually edit this!! If it is corrupted,
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    54
     the UIPainter may not be able to read the specification."
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    55
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    56
    "
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    57
     UIPainter new openOnClass:Inspector2 andSelector:#windowSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    58
     Inspector2 new openInterface:#windowSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    59
     Inspector2 open
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    60
    "
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    61
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    62
    <resource: #canvas>
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    63
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    64
    ^ 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    65
     #(FullSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    66
        name: windowSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    67
        window: 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    68
       (WindowSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    69
          label: 'Inspector2'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    70
          name: 'Inspector2'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    71
          labelChannel: windowTitleAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    72
          min: (Point 0 0)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    73
          bounds: (Rectangle 0 0 388 421)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    74
        )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    75
        component: 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    76
       (SpecCollection
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    77
          collection: (
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    78
           (MenuPanelSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    79
              name: 'ToolBar'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    80
              layout: (LayoutFrame 0 0 0 0 0 1 30 0)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    81
              menu: toolbarMenu
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    82
              textDefault: true
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    83
            )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    84
           (NoteBookViewSpec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    85
              name: 'NoteBook'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    86
              layout: (LayoutFrame 0 0 30 0 0 1 0 1)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    87
              model: tabSelectionIndexAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    88
              menu: tabLabelsAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    89
              useIndex: true
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    90
              fitLastRow: false
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    91
              canvas: tabViewAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    92
              keepCanvasAlive: true
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    93
            )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    94
           )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    95
         
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    96
        )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    97
      )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    98
5fda1c25e965 initial checkin
fm
parents:
diff changeset
    99
    "Modified: / 17-02-2008 / 08:42:31 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   100
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   101
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   102
!Inspector2 class methodsFor:'menu specs'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   103
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   104
toolbarMenu
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   105
    "This resource specification was automatically generated
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   106
     by the MenuEditor of ST/X."
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   107
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   108
    "Do not manually edit this!! If it is corrupted,
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   109
     the MenuEditor may not be able to read the specification."
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   110
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   111
    "
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   112
     MenuEditor new openOnClass:Tools::Inspector2 andSelector:#toolbarMenu
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   113
     (Menu new fromLiteralArrayEncoding:(Tools::Inspector2 toolbarMenu)) startUp
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   114
    "
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   115
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   116
    <resource: #menu>
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   117
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   118
    ^ 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   119
     #(Menu
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   120
        (
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   121
         (MenuItem
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   122
            enabled: backButtonEnabledHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   123
            label: 'Back'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   124
            itemValue: backButtonAction
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   125
            translateLabel: true
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   126
            submenuChannel: backButtonMenuChannel
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   127
            labelImage: (ResourceRetriever XPToolbarIconLibrary historyBackIcon)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   128
          )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   129
         (MenuItem
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   130
            enabled: forwardButtonEnabledHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   131
            label: 'Forward'
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   132
            itemValue: forwardButtonAction
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   133
            translateLabel: true
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   134
            submenuChannel: forwardButtonMenuChannel
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   135
            labelImage: (ResourceRetriever XPToolbarIconLibrary historyForwardIcon)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   136
          )
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   137
         (MenuItem
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   138
            label: '-'
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   139
          )
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   140
         (MenuItem
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   141
            label: 'Browse'
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   142
            itemValue: browseClassAction
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   143
            translateLabel: true
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   144
            isButton: true
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   145
            labelImage: (ResourceRetriever ToolbarIconLibrary startNewSystemBrowserIcon22x22)
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   146
          )
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   147
         )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   148
        nil
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   149
        nil
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   150
      )
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   151
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   152
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   153
!Inspector2 class methodsFor:'startup'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   154
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   155
openOn: anObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   156
10311
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   157
    self new 
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   158
        openOn: anObject.
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   159
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   160
    "Modified: / 17-02-2008 / 10:29:45 / janfrog"
10311
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   161
    "Modified (format): / 11-07-2011 / 22:28:03 / cg"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   162
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   163
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   164
!Inspector2 class methodsFor:'testing'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   165
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   166
testSimpleShow
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   167
    |ins|
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   168
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   169
    ins := Inspector2 openOn:4.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   170
    ins inspect:10.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   171
    ins inspect:42.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   172
    ins inspect:'dead one'.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   173
    ins inspect:'rolled back'.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   174
    
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   175
    "/ins inspectItem: (ins history at: 3).  "/ Rollback history, zustanou jen prvni 3
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   176
    
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   177
    ins inspect:'xFuj'.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   178
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   179
    "Modified: / 11-01-2008 / 20:36:37 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   180
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   181
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   182
!Inspector2 methodsFor:'accessing'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   183
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   184
backButtonEnabled: value
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   185
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   186
    ^self backButtonEnabledHolder value: value
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   187
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   188
    "Created: / 12-01-2008 / 19:14:35 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   189
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   190
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   191
currentObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   192
    ^ self navigationState theObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   193
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   194
    "Created: / 13-01-2008 / 10:14:47 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   195
    "Modified: / 17-02-2008 / 09:49:01 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   196
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   197
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   198
currentState
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   199
    ^ self navigationHistoryHolder currentItem
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   200
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   201
    "Created: / 21-02-2008 / 19:39:45 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   202
    "Modified: / 27-02-2008 / 11:56:55 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   203
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   204
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   205
forwardButtonEnabled: value
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   206
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   207
    ^self forwardButtonEnabledHolder value: value
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   208
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   209
    "Created: / 12-01-2008 / 19:14:48 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   210
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   211
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   212
navigationState
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   213
    ^ self navigationHistoryHolder value currentItem
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   214
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   215
    "Created: / 17-02-2008 / 09:49:01 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   216
    "Modified: / 21-02-2008 / 19:34:14 / janfrog"
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   217
    "Modified: / 22-07-2011 / 19:13:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   218
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   219
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   220
navigationState:historyItem 
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   221
    self navigationHistoryHolder "subjectChannel:" value currentItem:historyItem.
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   222
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   223
    "/self fixNavigation. "Nevola se kvuli problemu s prekreslovanim"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   224
    "/self updateTabs.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   225
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   226
    "Created: / 17-02-2008 / 09:49:11 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   227
    "Modified: / 21-02-2008 / 19:47:26 / janfrog"
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   228
    "Modified: / 22-07-2011 / 19:13:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   229
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   230
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   231
!Inspector2 methodsFor:'aspects'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   232
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   233
backButtonEnabledHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   234
    "return/create the 'backButtonEnabledHolder' value holder (automatically generated)"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   235
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   236
    ^(AspectAdaptor forAspect:#canGoBack)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   237
        subjectChannel: self navigationHistoryHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   238
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   239
    "Created: / 12-01-2008 / 19:13:49 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   240
    "Modified: / 27-02-2008 / 12:11:30 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   241
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   242
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   243
forwardButtonEnabledHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   244
    "return/create the 'backButtonEnabledHolder' value holder (automatically generated)"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   245
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   246
    ^(AspectAdaptor forAspect:#canGoForward)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   247
        subjectChannel: self navigationHistoryHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   248
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   249
    "Created: / 12-01-2008 / 19:13:49 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   250
    "Modified: / 27-02-2008 / 12:11:26 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   251
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   252
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   253
navigationHistoryHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   254
    "return/create the 'currentItemHolder' value holder (automatically generated)"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   255
    
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   256
    navigationHistoryHolder isNil ifTrue:[
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   257
        navigationHistoryHolder := Tools::NavigationHistory new.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   258
    ].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   259
    ^ navigationHistoryHolder
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   260
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   261
    "Created: / 21-02-2008 / 19:34:14 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   262
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   263
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   264
navigationStateAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   265
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   266
    navigationStateAspect ifNil:
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   267
        [navigationStateAspect := 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   268
            (AspectAdaptor forAspect: #currentItem)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   269
                subjectChannel:self navigationHistoryHolder].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   270
    ^navigationStateAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   271
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   272
    "Created: / 27-02-2008 / 12:05:22 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   273
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   274
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   275
tabLabelsAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   276
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   277
    ^ (AspectAdaptor forAspect:#tabLabels) 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   278
        subjectChannel: self navigationStateAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   279
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   280
    "Created: / 16-01-2008 / 17:29:52 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   281
    "Modified: / 27-02-2008 / 12:05:32 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   282
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   283
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   284
tabSelectionIndexAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   285
    ^ ((AspectAdaptor forAspect:#selectionIndex) 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   286
        subjectChannel:self navigationStateAspect)
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   287
        onChangeEvaluate:[ self tabViewAspect changed ];
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   288
        yourself
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   289
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   290
    "Created: / 16-01-2008 / 17:29:29 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   291
    "Modified: / 27-02-2008 / 12:06:05 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   292
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   293
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   294
tabViewAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   295
    tabViewAspect 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   296
        ifNil:[
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   297
            tabViewAspect := 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   298
                (AspectAdaptor forAspect:#selectionView) 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   299
                    subjectChannel: self navigationStateAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   300
        ].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   301
    ^ tabViewAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   302
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   303
    "Created: / 16-01-2008 / 17:30:05 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   304
    "Modified: / 27-02-2008 / 12:05:46 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   305
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   306
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   307
windowTitleAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   308
    ^ (AspectAdaptor forAspect:#displayString) 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   309
        subjectChannel:self navigationStateAspect
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   310
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   311
    "Created: / 17-02-2008 / 08:42:21 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   312
    "Modified: / 27-02-2008 / 12:05:56 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   313
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   314
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   315
!Inspector2 methodsFor:'menu'!
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   316
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   317
backButtonMenuChannel
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   318
    ^ [ self navigationHistoryHolder goBackMenu ]
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   319
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   320
    "Created: / 12-01-2008 / 18:57:08 / janfrog"
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   321
    "Modified: / 22-02-2008 / 16:57:46 / janfrog"
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   322
!
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   323
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   324
forwardButtonMenuChannel
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   325
    ^ [ self navigationHistoryHolder goForwardMenu ]
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   326
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   327
    "Created: / 12-01-2008 / 18:57:30 / janfrog"
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   328
    "Modified: / 22-02-2008 / 16:58:11 / janfrog"
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   329
! !
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   330
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   331
!Inspector2 methodsFor:'menu actions'!
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   332
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   333
backButtonAction
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   334
    self navigationHistoryHolder goBack.
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   335
    self updateWindowLabel
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   336
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   337
    "Modified: / 21-02-2008 / 19:40:23 / janfrog"
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   338
    "Modified: / 15-07-2011 / 16:26:28 / cg"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   339
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   340
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   341
browseClassAction
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   342
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   343
    | class |
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   344
    class := self currentObject class.
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   345
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   346
    browser isNil ifTrue:[
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   347
        browser := Tools::NewSystemBrowser browseSingleClass: class
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   348
    ] ifFalse:[
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   349
        browser spawnSingleClassBrowserFor:class in:#newBuffer.
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   350
        browser window raise.
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   351
    ]
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   352
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   353
    "Modified: / 23-07-2011 / 11:28:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   354
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   355
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   356
forwardButtonAction
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   357
    self navigationHistoryHolder goForward.
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   358
    self updateWindowLabel
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   359
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   360
    "Created: / 21-02-2008 / 19:52:03 / janfrog"
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   361
    "Modified: / 15-07-2011 / 16:26:33 / cg"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   362
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   363
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   364
!Inspector2 methodsFor:'opening'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   365
10311
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   366
closeDownViews
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   367
    LastExtent := self window extent.
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   368
    super closeDownViews.
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   369
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   370
    "Created: / 11-07-2011 / 22:33:47 / cg"
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   371
!
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   372
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   373
historyTryPush: anObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   374
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   375
  "/ Pokud uz na anObject byl tak tam skocit, jinak pridat na konec
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   376
  self history do: [:item |
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   377
    item theObject == anObject ifTrue:[ ^item ]
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   378
  ].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   379
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   380
  ^ self history push:anObject.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   381
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   382
    "Modified: / 16-01-2008 / 14:25:30 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   383
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   384
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   385
inspect:anObject 
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   386
    self navigationHistoryHolder 
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   387
        currentItem: (NavigationState for: anObject).
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   388
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   389
    self window notNil ifTrue:[ 
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   390
        self updateWindowLabel
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   391
    ].
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   392
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   393
    "Modified: / 27-02-2008 / 12:06:52 / janfrog"
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   394
    "Modified: / 15-07-2011 / 16:26:03 / cg"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   395
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   396
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   397
openOn: anObject
10311
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   398
    self inspect: anObject.    
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   399
    self openWithExtent:(LastExtent ? nil).
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   400
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   401
    "Modified: / 13-01-2008 / 13:55:27 / janfrog"
10311
755d5c678cf0 class definition
Claus Gittinger <cg@exept.de>
parents: 10206
diff changeset
   402
    "Modified: / 11-07-2011 / 22:31:42 / cg"
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   403
!
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   404
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   405
postBuildWith:aBuilder
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   406
    self updateWindowLabel
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   407
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   408
    "Created: / 15-07-2011 / 16:25:36 / cg"
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   409
!
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   410
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   411
updateWindowLabel
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   412
    |object|
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   413
10322
4c79efcd1926 changed: #updateWindowLabel
Claus Gittinger <cg@exept.de>
parents: 10320
diff changeset
   414
    object := self navigationHistoryHolder currentItem theObject.
10320
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   415
    self window label:(InspectorView commonLabelFor:object).
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   416
98f0327453eb seq-id in windowlabel
Claus Gittinger <cg@exept.de>
parents: 10311
diff changeset
   417
    "Created: / 15-07-2011 / 16:25:42 / cg"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   418
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   419
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   420
!Inspector2::NavigationState class methodsFor:'creating classes'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   421
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   422
for: anObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   423
  | item |
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   424
  item := self new.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   425
  item theObject: anObject.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   426
  ^ item.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   427
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   428
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   429
!Inspector2::NavigationState class methodsFor:'documentation'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   430
9996
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   431
version
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   432
    ^'$Id: Tools__Inspector2.st,v 1.10 2011-07-23 10:41:37 vrany Exp $'
9996
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   433
!
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   434
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   435
version_SVN
8904
f051532eb303 update #version_SVN with § as keyword expansion character
fm
parents: 8816
diff changeset
   436
    ^'§Id: Tools__Inspector2.st 115 2009-04-16 12:47:07Z vranyj1 §'
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   437
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   438
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   439
!Inspector2::NavigationState methodsFor:'accessing'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   440
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   441
index
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   442
    ^ index
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   443
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   444
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   445
index:something
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   446
    index := something.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   447
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   448
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   449
selectionIndex
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   450
    selectionIndex ifNil:[^1].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   451
    selectionIndex < 1 ifTrue:[^1].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   452
    selectionIndex > tabs size ifTrue:[^tabs size].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   453
    ^selectionIndex
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   454
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   455
    "Created: / 16-01-2008 / 17:24:27 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   456
    "Modified: / 17-02-2008 / 10:20:35 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   457
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   458
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   459
selectionIndex: anInteger
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   460
    selectionIndex := anInteger.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   461
    self changed:#selectionIndex
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   462
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   463
    "Created: / 16-01-2008 / 17:27:52 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   464
    "Modified: / 17-02-2008 / 09:46:45 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   465
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   466
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   467
selectionView
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   468
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   469
    |tab|
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   470
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   471
    tab := self tabs at: self selectionIndex.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   472
    ^tab 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   473
        ifNil:[nil]
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   474
        ifNotNil:[tab view].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   475
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   476
    "Created: / 16-01-2008 / 17:31:19 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   477
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   478
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   479
tabLabels
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   480
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   481
    ^self tabs collect:[:tab | tab label]
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   482
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   483
    "Created: / 16-01-2008 / 17:14:07 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   484
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   485
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   486
tabViews
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   487
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   488
    ^self tabs collect:[:tab | tab view]
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   489
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   490
    "Created: / 16-01-2008 / 17:14:13 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   491
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   492
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   493
tabs
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   494
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   495
    tabs ifNil:[self initializeTabs].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   496
    ^tabs
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   497
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   498
    "Created: / 16-01-2008 / 16:51:53 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   499
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   500
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   501
theObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   502
    ^ theObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   503
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   504
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   505
theObject:anObject
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   506
    theObject := anObject.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   507
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   508
    "Modified: / 17-02-2008 / 08:38:44 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   509
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   510
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   511
!Inspector2::NavigationState methodsFor:'comparing'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   512
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   513
= anotherState
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   514
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   515
    ^self class == anotherState class 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   516
        and:[self theObject == anotherState theObject]
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   517
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   518
    "Created: / 21-02-2008 / 19:39:01 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   519
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   520
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   521
hash
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   522
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   523
    ^theObject hash
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   524
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   525
    "Created: / 21-02-2008 / 19:38:08 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   526
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   527
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   528
!Inspector2::NavigationState methodsFor:'displaying'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   529
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   530
displayString
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   531
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   532
    displayString ifNil:
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   533
        [displayString := theObject printString.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   534
        displayString size > 15 ifTrue:[displayString := (displayString copyTo:12),  '...'].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   535
        displayString := displayString , ' [', theObject class name , ']'].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   536
    ^ displayString
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   537
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   538
    "Created: / 21-02-2008 / 19:53:07 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   539
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   540
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   541
!Inspector2::NavigationState methodsFor:'initialization'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   542
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   543
initializeClassBrowserTab
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   544
    | browser |
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   545
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   546
    self notYetImplemented.
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   547
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   548
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   549
    tabs add:
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   550
        (Tools::Inspector2Tab new
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   551
            priority: 50;
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   552
            label:'Object';
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   553
            view: ((theObject inspectorClass new inspect:theObject)
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   554
                        yourself))
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   555
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   556
    "Created: / 22-07-2011 / 18:48:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   557
!
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   558
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   559
initializeCommonTabs
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   560
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   561
    "Unfinished code"
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   562
    "/self initializeClassBrowserTab
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   563
9996
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   564
"/    tabs add:
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   565
"/        (Tools::Inspector2Tab new
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   566
"/            priority: 50;
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   567
"/            label:'Object';
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   568
"/            view: ((theObject inspectorClass new inspect:theObject)
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   569
"/                        yourself))
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   570
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   571
    "Created: / 16-01-2008 / 16:56:48 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   572
    "Modified: / 17-02-2008 / 10:29:54 / janfrog"
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   573
    "Modified: / 22-07-2011 / 18:54:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   574
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   575
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   576
initializeExtraTabs
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   577
10206
a87ddb42707d oops forgot to check in
Claus Gittinger <cg@exept.de>
parents: 9996
diff changeset
   578
    "/ cg: I prefer using explicit getter - so I find them in the browser
a87ddb42707d oops forgot to check in
Claus Gittinger <cg@exept.de>
parents: 9996
diff changeset
   579
    theObject inspector2Tabs do: [:selector|
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   580
            | tab |
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   581
            tab := [ theObject perform: selector ] 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   582
                        on: Error do: 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   583
                            [:ex|
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   584
                            Tools::Inspector2Tab new 
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   585
                                label: selector;
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   586
                                text:
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   587
                                    (ex description, Character cr, Character cr,
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   588
                                     ex suspendedContext fullPrintString)].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   589
            (tab notNil and:[tab isKindOf: Tools::Inspector2Tab])
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   590
                ifTrue:[tabs add: tab]].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   591
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   592
    "Created: / 16-01-2008 / 17:25:24 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   593
    "Modified: / 17-02-2008 / 10:30:43 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   594
    "Modified: / 07-11-2008 / 08:40:35 / Jan Vrany <vranyj1@fel.cvut.cz>"
10206
a87ddb42707d oops forgot to check in
Claus Gittinger <cg@exept.de>
parents: 9996
diff changeset
   595
    "Modified (comment): / 05-07-2011 / 13:43:23 / cg"
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   596
!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   597
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   598
initializeTabs
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   599
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   600
    tabs := OrderedCollection new.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   601
    self initializeCommonTabs.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   602
    self initializeExtraTabs.
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   603
    tabs := tabs asSortedCollection:[:a :b|a priority > b priority].
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   604
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   605
    "Created: / 16-01-2008 / 16:54:28 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   606
    "Modified: / 17-02-2008 / 10:08:04 / janfrog"
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   607
! !
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   608
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   609
!Inspector2 class methodsFor:'documentation'!
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   610
8807
6041d13f1fb1 changed: #version_SVN
fm
parents: 8779
diff changeset
   611
version_CVS
10379
489f71d5711e Added "browse class" toolbar button to Inspector2
vrany
parents: 10322
diff changeset
   612
    ^ '$Header: /cvs/stx/stx/libtool/Tools__Inspector2.st,v 1.10 2011-07-23 10:41:37 vrany Exp $'
8807
6041d13f1fb1 changed: #version_SVN
fm
parents: 8779
diff changeset
   613
!
6041d13f1fb1 changed: #version_SVN
fm
parents: 8779
diff changeset
   614
8816
fm
parents: 8807
diff changeset
   615
version_CVS_jvrany
8904
f051532eb303 update #version_SVN with § as keyword expansion character
fm
parents: 8816
diff changeset
   616
    ^ '§Header: /opt/data/cvs/stx/goodies/libtool3/Inspector2.st,v 1.6 2008-02-27 13:45:23 vranyj1 Exp §'
9996
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   617
!
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   618
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   619
version_SVN
Claus Gittinger <cg@exept.de>
parents: 8904
diff changeset
   620
    ^ '§Id: Tools__Inspector2.st 7486 2009-10-26 22:06:24Z vranyj1 §'
8779
5fda1c25e965 initial checkin
fm
parents:
diff changeset
   621
! !