SmallSense__ParseTreeInspector.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 15 Jan 2015 10:08:11 +0000
changeset 374 e65bd2bf892a
parent 266 548a8c5063e2
child 381 57ef482699a6
permissions -rw-r--r--
Updated copyright notice.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     1
"
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     2
stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
374
e65bd2bf892a Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 266
diff changeset
     3
Copyright (C) 2013-2015 Jan Vrany
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     4
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     5
This library is free software; you can redistribute it and/or
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     6
modify it under the terms of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     7
License as published by the Free Software Foundation; either
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     8
version 2.1 of the License. 
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     9
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    10
This library is distributed in the hope that it will be useful,
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    11
but WITHOUT ANY WARRANTY; without even the implied warranty of
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    13
Lesser General Public License for more details.
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    14
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    15
You should have received a copy of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    16
License along with this library; if not, write to the Free Software
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    17
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    18
"
249
8bc64027b189 Package renamed to stx:goodies/smallsense
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 197
diff changeset
    19
"{ Package: 'stx:goodies/smallsense' }"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
64
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 32
diff changeset
    21
"{ NameSpace: SmallSense }"
2257d7223898 All classes moved to namespace SmallSense.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 32
diff changeset
    22
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
    23
ApplicationModel subclass:#ParseTreeInspector
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    24
	instanceVariableNames:'classHolder selectorHolder methodHolder nodeHolder sourceHolder
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    25
		sourceView inspectorView'
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
	classVariableNames:''
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
	poolDictionaries:''
67
020b7461b15e Package structure reorganization.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 66
diff changeset
    28
	category:'SmallSense-Core-Interface'
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
    31
HierarchicalItem subclass:#ParseTreeItem
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
	instanceVariableNames:'astNode ivarName'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    33
	classVariableNames:''
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
	poolDictionaries:''
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
    35
	privateIn:ParseTreeInspector
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    38
!ParseTreeInspector class methodsFor:'documentation'!
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    39
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    40
copyright
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    41
"
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    42
stx:goodies/smallsense - A productivity plugin for Smalltalk/X IDE
374
e65bd2bf892a Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 266
diff changeset
    43
Copyright (C) 2013-2015 Jan Vrany
252
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    44
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    45
This library is free software; you can redistribute it and/or
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    46
modify it under the terms of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    47
License as published by the Free Software Foundation; either
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    48
version 2.1 of the License. 
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    49
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    50
This library is distributed in the hope that it will be useful,
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    51
but WITHOUT ANY WARRANTY; without even the implied warranty of
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    52
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    53
Lesser General Public License for more details.
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    54
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    55
You should have received a copy of the GNU Lesser General Public
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    56
License along with this library; if not, write to the Free Software
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    57
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    58
"
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    59
! !
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
    61
!ParseTreeInspector class methodsFor:'instance creation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
node: node source: source
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
    ^self new node: node source: source
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
    "Created: / 14-09-2011 / 17:25:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
    70
!ParseTreeInspector class methodsFor:'interface opening'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
openOnClass: class selector: selector
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
    ^self new
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    75
        class: class selector: selector;
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
        open
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    78
    "
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    79
        SmallSenseParseNodeInspector 
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    80
            openOnClass: self
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    81
            selector: #openOnClass:selector: 
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    82
    "
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
    83
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
    "Created: / 26-11-2011 / 12:30:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
66
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    85
!
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    86
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    87
openOnNode: node source: source
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    88
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    89
    ^self new
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    90
        node: node source: source;
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    91
        open
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    92
4681cc6256b1 Added utility method ParseNodeInspector>>openOnNode:source:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
    93
    "Created: / 25-08-2013 / 10:28:36 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
    96
!ParseTreeInspector class methodsFor:'interface specs'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
inspectorTabSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
    "This resource specification was automatically generated
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
     by the UIPainter of ST/X."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
    "Do not manually edit this!! If it is corrupted,
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
     the UIPainter may not be able to read the specification."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
     UIPainter new openOnClass:Tools::ParseNodeInspector andSelector:#inspectorTabSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
     Tools::ParseNodeInspector new openInterface:#inspectorTabSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
    <resource: #canvas>
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
    ^ 
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
     #(FullSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
        name: inspectorTabSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
        window: 
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
       (WindowSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
          label: 'InspectorTab'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
          name: 'InspectorTab'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
          min: (Point 10 10)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
          bounds: (Rectangle 0 0 300 300)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
        )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
        component: 
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
       (SpecCollection
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
          collection: (
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
           (NonScrollableArbitraryComponentSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
              name: 'InspectorView'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   128
              component: nodeInspectorView
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
            )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
           )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
         
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
        )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
      )
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   134
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   135
    "Modified: / 09-04-2014 / 22:29:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
sourceTabSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
    "This resource specification was automatically generated
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
     by the UIPainter of ST/X."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
    "Do not manually edit this!! If it is corrupted,
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
     the UIPainter may not be able to read the specification."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
    "
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   146
     UIPainter new openOnClass:SmallSense::ParseNodeInspector andSelector:#sourceTabSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   147
     SmallSense::ParseNodeInspector new openInterface:#sourceTabSpec
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
    <resource: #canvas>
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
    ^ 
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   153
    #(FullSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   154
       name: sourceTabSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   155
       window: 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   156
      (WindowSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   157
         label: 'SourceTab'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   158
         name: 'SourceTab'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   159
         min: (Point 10 10)
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   160
         bounds: (Rectangle 0 0 300 300)
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   161
       )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   162
       component: 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   163
      (SpecCollection
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   164
         collection: (
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   165
          (TextEditorSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   166
             name: 'SourceView'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   167
             layout: (LayoutFrame 0 0 0 0 0 1 0 1)
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   168
             model: sourceHolder
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   169
             hasHorizontalScrollBar: true
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   170
             hasVerticalScrollBar: true
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   171
             isReadOnly: true
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   172
             showingCode: true
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   173
             hasKeyboardFocusInitially: false
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   174
             postBuildCallback: postBuildSourceView:
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   175
             viewClassName: 'CodeView'
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
           )
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   177
          )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   178
        
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   179
       )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   180
     )
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
windowSpec
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   184
    ^ self windowSpecWithInspector
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   185
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   186
    "Modified: / 09-04-2014 / 22:27:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   187
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   188
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   189
windowSpecWithInspector
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   190
    "This resource specification was automatically generated
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   191
     by the UIPainter of ST/X."
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   192
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   193
    "Do not manually edit this!! If it is corrupted,
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   194
     the UIPainter may not be able to read the specification."
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   195
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   196
    "
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   197
     UIPainter new openOnClass:SmallSense::ParseNodeInspector andSelector:#windowSpecWithInspector
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   198
     SmallSense::ParseNodeInspector new openInterface:#windowSpecWithInspector
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   199
    "
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   200
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   201
    <resource: #canvas>
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   202
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   203
    ^ 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   204
    #(FullSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   205
       name: windowSpecWithInspector
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   206
       window: 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   207
      (WindowSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   208
         label: 'Parse Tree Inspector'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   209
         name: 'Parse Tree Inspector'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   210
         min: (Point 10 10)
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   211
         bounds: (Rectangle 0 0 630 322)
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   212
       )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   213
       component: 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   214
      (SpecCollection
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   215
         collection: (
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   216
          (VariableHorizontalPanelSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   217
             name: 'QueryTreeAndSourcePanel'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   218
             layout: (LayoutFrame 0 0 0 0 0 1 0 1)
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   219
             showHandle: true
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   220
             snapMode: both
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   221
             handlePosition: right
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   222
             component: 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   223
            (SpecCollection
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   224
               collection: (
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   225
                (HierarchicalListViewSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   226
                   name: 'QueryTree'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   227
                   model: selectionHolder
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   228
                   menu: queryTreeMenu
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   229
                   hasHorizontalScrollBar: true
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   230
                   hasVerticalScrollBar: true
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   231
                   listModel: parseTree
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   232
                   useIndex: false
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   233
                   highlightMode: line
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   234
                   useDefaultIcons: false
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   235
                 )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   236
                (NoteBookViewSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   237
                   name: 'NoteBook'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   238
                   menu: tabList
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   239
                 )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   240
                )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   241
              
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   242
             )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   243
             handles: (Any 0.3 1.0)
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   244
           )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   245
          )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   246
        
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   247
       )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   248
     )
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   249
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   250
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   251
windowSpecWithoutInspector
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   252
    "This resource specification was automatically generated
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   253
     by the UIPainter of ST/X."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   254
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   255
    "Do not manually edit this!! If it is corrupted,
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   256
     the UIPainter may not be able to read the specification."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   257
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   258
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   259
     UIPainter new openOnClass:SmallSenseParseNodeInspector andSelector:#windowSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   260
     SmallSenseParseNodeInspector new openInterface:#windowSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   261
     SmallSenseParseNodeInspector open
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   262
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   263
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
    <resource: #canvas>
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
    ^ 
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
     #(FullSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   268
        name: windowSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
        window: 
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
       (WindowSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
          label: 'Parse Tree Inspector'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   272
          name: 'Parse Tree Inspector'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
          min: (Point 10 10)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
          bounds: (Rectangle 0 0 630 322)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   275
        )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   276
        component: 
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   277
       (SpecCollection
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   278
          collection: (
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   279
           (VariableHorizontalPanelSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   280
              name: 'QueryTreeAndSourcePanel'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   281
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   282
              showHandle: true
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   283
              snapMode: both
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   284
              handlePosition: right
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   285
              component: 
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   286
             (SpecCollection
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   287
                collection: (
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   288
                 (HierarchicalListViewSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   289
                    name: 'QueryTree'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   290
                    model: selectionHolder
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   291
                    menu: queryTreeMenu
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   292
                    hasHorizontalScrollBar: true
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   293
                    hasVerticalScrollBar: true
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   294
                    listModel: parseTree
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
                    useIndex: false
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
                    highlightMode: line
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   297
                    useDefaultIcons: false
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   298
                  )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   299
                 (UISubSpecification
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   300
                    name: 'SourceSoec'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   301
                    minorKey: sourceTabSpec
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   302
                  )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
                 )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
               
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   305
              )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   306
              handles: (Any 0.3 1.0)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
            )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
           )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
         
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   310
        )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   311
      )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   313
    "Created: / 09-04-2014 / 22:26:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   314
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   315
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   316
!ParseTreeInspector class methodsFor:'list specs'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   317
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   318
tabList
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   319
    "This resource specification was automatically generated
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   320
     by the TabListEditor of ST/X."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   321
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   322
    "Do not manually edit this!! If it is corrupted,
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   323
     the TabListEditor may not be able to read the specification."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   324
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   325
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   326
     TabListEditor new openOnClass: self andSelector:#tabList
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   327
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   328
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   329
    <resource: #tabList>
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   330
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   331
    ^     #(
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   332
       (TabItem
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   333
          label: 'Source'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   334
          minorKey: sourceTabSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   335
          createNewBuilder: false
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   336
        )
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   337
       (TabItem
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   338
          label: 'Node'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   339
          minorKey: inspectorTabSpec
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   340
          createNewBuilder: false
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   341
        )
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
       )
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   343
     
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
      collect:[:aTab| TabItem new fromLiteralArrayEncoding:aTab ]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   347
!ParseTreeInspector class methodsFor:'menu specs'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
queryTreeMenu
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
    "This resource specification was automatically generated
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   351
     by the MenuEditor of ST/X."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   352
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   353
    "Do not manually edit this!! If it is corrupted,
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
     the MenuEditor may not be able to read the specification."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   356
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   357
     MenuEditor new openOnClass:XQuery::QueryInspectorUI andSelector:#queryTreeMenu
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
     (Menu new fromLiteralArrayEncoding:(XQuery::QueryInspectorUI queryTreeMenu)) startUp
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
    "
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   360
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   361
    <resource: #menu>
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
    ^
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
     #(Menu
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   365
	(
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
	 (MenuItem
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   367
	    label: 'Inspect AST node'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   368
	    itemValue: queryTreeMenuInspectAstNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   369
	    translateLabel: true
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   370
	  )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   371
	 )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   372
	nil
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
	nil
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   374
      )
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   375
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   376
    "Created: / 12-04-2007 / 11:46:57 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   377
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   378
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   379
!ParseTreeInspector class methodsFor:'plugIn spec'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   380
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   381
aspectSelectors
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   382
    "This resource specification was automatically generated
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   383
     by the UIPainter of ST/X."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   384
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   385
    "Do not manually edit this. If it is corrupted,
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   386
     the UIPainter may not be able to read the specification."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   387
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   388
    "Return a description of exported aspects;
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   389
     these can be connected to aspects of an embedding application
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   390
     (if this app is embedded in a subCanvas)."
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   391
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   392
    ^ #(
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   393
        #model
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   394
      ).
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   395
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   396
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   397
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   398
!ParseTreeInspector methodsFor:'accessing'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   399
15
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   400
class: class selector: selector
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   401
    | mth source node parser |
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   402
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   403
    mth := class >> selector.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   404
    mth isNil ifTrue:[
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   405
        self error:'No such method'.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   406
        ^self.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   407
    ].
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   408
    source := mth source.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   409
    parser := Parser parseMethod: source.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   410
    node := parser tree.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   411
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   412
    self node: node source: source.
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   413
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   414
     "
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   415
        SmallSenseParseNodeInspector 
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   416
            openOnClass: SmallSenseParseNodeInspector
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   417
            selector: #class:selector: 
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   418
    "
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   419
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   420
    "Created: / 15-02-2012 / 12:25:53 / Jan Vrany <jan.vrany@fit.cvut.cz>"
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   421
!
23ecfbccccd5 Updates in SmallSenseParseNodeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   422
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   423
node: node source: source
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   424
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   425
    self nodeHolder value: node.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   426
    self sourceHolder value: source.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   427
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   428
    "Created: / 14-09-2011 / 17:23:16 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   429
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   430
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   431
selection
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   432
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   433
    | item |
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   434
    (item := self selectionHolder value) notNil ifTrue:[
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   435
        ^item
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   436
    ] ifFalse:[
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   437
        ^nil
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   438
    ]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   439
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   440
    "Created: / 12-04-2007 / 12:29:08 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   441
    "Created: / 26-11-2011 / 11:46:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   442
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   443
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   444
!ParseTreeInspector methodsFor:'aspects'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   445
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   446
nodeHolder
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   447
    "return/create the 'nodeHolder' value holder (automatically generated)"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   448
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   449
    nodeHolder isNil ifTrue:[
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   450
        nodeHolder := ValueHolder new.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   451
    ].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   452
    ^ nodeHolder
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   453
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   454
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   455
nodeHolder:something
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   456
    "set the 'nodeHolder' value holder (automatically generated)"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   457
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   458
    nodeHolder := something.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   459
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   460
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   461
nodeInspectorView
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   462
18
cebd9550b288 branch jv-experiments merged back
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   463
    inspectorView isNil ifTrue:[
cebd9550b288 branch jv-experiments merged back
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   464
        inspectorView := InspectorView new
cebd9550b288 branch jv-experiments merged back
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   465
    ].
cebd9550b288 branch jv-experiments merged back
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   466
    ^ inspectorView
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   467
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   468
    "Created: / 31-10-2007 / 12:20:02 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   469
    "Created: / 14-09-2011 / 17:24:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   470
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   471
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   472
parseTree
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   473
193
c0c4605b3791 Keep (highlighter) source in ParseTreeIndex
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   474
    ^self builder bindings at: #parseTree
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   475
        ifAbsentPut:
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   476
            [PluggableAdaptor on: self nodeHolder getter:
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   477
                [:m|
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   478
                | rootAstNodeItem rootAstNode hl |
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   479
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   480
                rootAstNode := self nodeHolder value.
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   481
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   482
                rootAstNodeItem := ParseTreeItem new
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   483
                                            ivarName: 'AST';
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   484
                                            astNode: rootAstNode;
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   485
                                            yourself.
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   486
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   487
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   488
                hl := HierarchicalList new
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   489
                        root: rootAstNodeItem;
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   490
                        showRoot: true;
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   491
                        yourself.
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   492
                rootAstNodeItem expand.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   493
                hl]]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   494
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   495
    "Created: / 28-03-2007 / 15:58:31 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   496
    "Modified: / 31-10-2007 / 12:11:46 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   497
    "Created: / 14-09-2011 / 17:24:10 / Jan Vrany <jan.vrany@fit.cvut.cz>"
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   498
    "Modified: / 07-08-2014 / 10:19:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   499
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   500
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   501
selectionHolder
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   502
193
c0c4605b3791 Keep (highlighter) source in ParseTreeIndex
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   503
    ^self builder bindings at: #selectionHolder
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   504
        ifAbsentPut:
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   505
            [nil asValue
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   506
                onChangeSend:#updateSourceViewSelection to:self;
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   507
                onChangeSend:#updateInspectorView to:self;
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   508
                yourself]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   509
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   510
    "Created: / 28-03-2007 / 16:46:30 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   511
    "Modified: / 31-10-2007 / 12:25:54 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   512
    "Created: / 14-09-2011 / 17:24:39 / Jan Vrany <jan.vrany@fit.cvut.cz>"
193
c0c4605b3791 Keep (highlighter) source in ParseTreeIndex
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   513
    "Modified: / 09-04-2014 / 09:35:51 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   514
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   515
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   516
sourceHolder
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   517
    "return/create the 'sourceHolder' value holder (automatically generated)"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   518
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   519
    sourceHolder isNil ifTrue:[
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   520
        sourceHolder := ValueHolder new.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   521
    ].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   522
    ^ sourceHolder
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   523
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   524
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   525
sourceHolder:something
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   526
    "set the 'sourceHolder' value holder (automatically generated)"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   527
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   528
    sourceHolder := something.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   529
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   530
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   531
tabList
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   532
    "Generated by the TabListEditor"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   533
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   534
    |list|
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   535
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   536
    (list := builder bindingAt:#tabList) isNil ifTrue:[
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   537
	builder aspectAt:#tabList put:(list := self class tabList).
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   538
    ].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   539
    ^ list
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   540
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   541
    "Created: / 31-10-2007 / 12:21:18 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   542
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   543
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   544
!ParseTreeInspector methodsFor:'callbacks - post build'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   545
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   546
postBuildSourceView: aView
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   547
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   548
    sourceView := aView scrolledView.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   549
    sourceView cursorLineHolder addDependent: self.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   550
    sourceView cursorColHolder addDependent: self.
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   551
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   552
    "Created: / 12-04-2007 / 12:28:14 / janfrog"
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   553
    "Modified: / 10-04-2014 / 07:55:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   554
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   555
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   556
!ParseTreeInspector methodsFor:'change & update'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   557
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   558
update:something with:aParameter from:changedObject
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   559
    "Invoked when an object that I depend upon sends a change notification."
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   560
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   561
    "stub code automatically generated - please change as required"
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   562
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   563
    sourceView notNil ifTrue:[
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   564
        changedObject == sourceView cursorLineHolder ifTrue:[
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   565
            self updateSelectionFromCursor.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   566
            ^ self.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   567
        ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   568
        changedObject == sourceView cursorColHolder ifTrue:[
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   569
            self updateSelectionFromCursor.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   570
            ^ self.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   571
        ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   572
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   573
    ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   574
    super update:something with:aParameter from:changedObject
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   575
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   576
    "Modified: / 10-04-2014 / 07:57:14 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   577
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   578
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   579
updateInspectorView
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   580
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   581
    inspectorView notNil ifTrue:[ 
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   582
        | selection |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   583
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   584
        selection := self selection.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   585
        inspectorView inspect: (selection isNil ifTrue:[ nil ] ifFalse:[ selection node ])
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   586
    ]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   587
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   588
    "Created: / 31-10-2007 / 12:25:25 / janfrog"
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   589
    "Modified: / 10-04-2014 / 08:34:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   590
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   591
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   592
updateSelectionFromCursor
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   593
    | pos root selection |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   594
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   595
    pos := sourceView characterPositionOfCursor.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   596
    root := self parseTree value root.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   597
    selection := root leafNodeAt: pos.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   598
    selection notNil ifTrue:[ 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   599
        | item |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   600
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   601
        item := selection.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   602
        [ item notNil ] whileTrue:[ 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   603
            item expand.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   604
            item := item parent.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   605
        ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   606
        self selectionHolder value: selection
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   607
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   608
    ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   609
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   610
    "Created: / 10-04-2014 / 07:57:09 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   611
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   612
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   613
updateSourceViewSelection
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   614
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   615
    | astNode startPosition stopPosition |
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   616
    sourceView ifNil:[^self].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   617
    (astNode := self selection) ifNil:[^self].
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   618
    astNode node isNil ifTrue:[ ^ self ].
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   619
    (startPosition := astNode node startPosition)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   620
        ifNil:[^sourceView unselect].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   621
    (stopPosition := astNode node endPosition)
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   622
        ifNil:[^sourceView unselect].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   623
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   624
    sourceView
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   625
        selectFromCharacterPosition: startPosition
71
8ef42f6f9b05 Fix in SmallSense::ParseNodeInspector: scroll to selection after selecting a parse node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
   626
        to: stopPosition.
8ef42f6f9b05 Fix in SmallSense::ParseNodeInspector: scroll to selection after selecting a parse node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
   627
    sourceView makeCursorVisible
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   628
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   629
    "Created: / 12-04-2007 / 12:29:42 / janfrog"
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   630
    "Modified: / 07-08-2014 / 10:21:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   631
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   632
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   633
!ParseTreeInspector methodsFor:'menu actions'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   634
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   635
queryTreeMenuInspectAstNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   636
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   637
    ^self selection node inspect
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   638
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   639
    "Created: / 12-04-2007 / 11:47:48 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   640
    "Modified: / 26-11-2011 / 12:12:12 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   641
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   642
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   643
!ParseTreeInspector::ParseTreeItem class methodsFor:'documentation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   644
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   645
version
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 98
diff changeset
   646
    ^'$Id: SmallSense__ParseNodeInspector.st,v 1.2 2014/02/12 14:49:29 sr Exp $'
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   647
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   648
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   649
!ParseTreeInspector::ParseTreeItem methodsFor:'accessing'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   650
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   651
astNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   652
    ^ astNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   653
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   654
    "Created: / 28-03-2007 / 15:51:49 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   655
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   656
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   657
astNode:anAstNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   658
    astNode := anAstNode.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   659
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   660
    "Created: / 28-03-2007 / 15:51:49 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   661
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   662
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   663
astNodeName
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   664
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   665
    ^astNode class name
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   666
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   667
    "Created: / 12-04-2007 / 11:29:57 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   668
    "Modified: / 31-10-2007 / 12:13:34 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   669
    "Modified: / 26-11-2011 / 10:47:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   670
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   671
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   672
children
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   673
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   674
    children isNil ifTrue:[
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   675
        children := OrderedCollection new.
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   676
        astNode notNil ifTrue:[
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   677
            astNode childNamesAndValuesDo:[:ivarName :astNode|
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   678
                astNode notNil ifTrue:[
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   679
                    children add: (self class new
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   680
                                    ivarName: ivarName;
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   681
                                    astNode: astNode;
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   682
                                    parent: self)
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   683
                ]
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   684
            ].
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   685
        ].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   686
    ].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   687
    ^children
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   688
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   689
    "Created: / 28-03-2007 / 15:55:24 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   690
    "Modified: / 12-04-2007 / 11:35:24 / janfrog"
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   691
    "Modified: / 07-08-2014 / 10:20:11 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   692
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   693
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   694
icon
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   695
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   696
    ^nil
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   697
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   698
    "Created: / 31-10-2007 / 12:14:52 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   699
    "Modified: / 26-11-2011 / 10:47:15 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   700
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   701
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   702
ivarName
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   703
    ^ ivarName ? '?'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   704
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   705
    "Created: / 12-04-2007 / 11:29:28 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   706
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   707
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   708
ivarName:something
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   709
    ivarName := something.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   710
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   711
    "Created: / 12-04-2007 / 11:29:28 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   712
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   713
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   714
label
193
c0c4605b3791 Keep (highlighter) source in ParseTreeIndex
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 174
diff changeset
   715
    | label start stop |
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   716
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   717
    astNode isNil ifTrue:[ ^ 'No AST' ].
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   718
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   719
    start := astNode startPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   720
    stop := astNode endPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   721
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   722
    label := '%1 {%2} [%3..%4]' 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   723
                bindWith: self ivarName
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   724
                    with: self astNodeName
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   725
                    with: start ? '?'
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   726
                    with: stop ? '?'.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   727
    (start isNil or:[ stop isNil ]) ifTrue:[ 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   728
        label := label asText colorizeAllWith: Color red.
98
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 71
diff changeset
   729
    ].
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 71
diff changeset
   730
    ^ label
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   731
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   732
    "Created: / 28-03-2007 / 15:53:18 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   733
    "Modified: / 12-04-2007 / 11:30:23 / janfrog"
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   734
    "Modified: / 07-08-2014 / 10:20:35 / Jan Vrany <jan.vrany@fit.cvut.cz>"
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   735
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   736
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   737
leafNodeAt: pos
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   738
    | start stop |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   739
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   740
    start := astNode startPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   741
    stop := astNode endPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   742
    self children do:[:each | 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   743
        | leaf |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   744
        leaf := each leafNodeAt: pos.            
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   745
        leaf notNil ifTrue:[ ^ leaf ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   746
    ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   747
    (start notNil and:[stop notNil]) ifTrue:[
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   748
        (pos between: start and: stop) ifTrue:[ ^ self ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   749
    ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   750
    ^ nil.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   751
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   752
    "Created: / 10-04-2014 / 08:02:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   753
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   754
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   755
node
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   756
    ^ astNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   757
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   758
    "Created: / 28-03-2007 / 15:51:49 / janfrog"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   759
    "Created: / 26-11-2011 / 11:48:18 / Jan Vrany <jan.vrany@fit.cvut.cz>"
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   760
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   761
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   762
!ParseTreeInspector class methodsFor:'documentation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   763
29
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   764
version_HG
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   765
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   766
    ^ '$Changeset: <not expanded> $'
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   767
!
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   768
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   769
version_SVN
174
3e08d765d86f sync from current CVS head; fixed comment highlighting for STXEOLRule
Claus Gittinger
parents: 98
diff changeset
   770
    ^ '$Id: SmallSense__ParseNodeInspector.st,v 1.2 2014/02/12 14:49:29 sr Exp $'
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   771
! !
18
cebd9550b288 branch jv-experiments merged back
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   772