SmallSense__ParseTreeInspector.st
author Claus Gittinger <cg@exept.de>
Fri, 18 Nov 2016 11:56:15 +0100
branchcvs_MAIN
changeset 996 f5c13fa1943d
parent 950 105d05210aa3
child 1103 b1be38cd7002
permissions -rw-r--r--
#OTHER by cg documentation
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
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
     3
Copyright (C) 2013-2014 Jan Vrany
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
feba6ee5c814 Added copyright notice and license information (LGPL2)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 249
diff changeset
    43
Copyright (C) 2013-2014 Jan Vrany
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
    sourceView notNil ifTrue:[
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   562
        "/ cursor moved by user...
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   563
        ((changedObject == sourceView cursorLineHolder)
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   564
        or:[ changedObject == sourceView cursorColHolder ]) ifTrue:[
196
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
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   569
    ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   570
    super update:something with:aParameter from:changedObject
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
    "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
   573
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   574
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   575
updateInspectorView
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   576
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   577
    inspectorView notNil ifTrue:[ 
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   578
        | selection |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   579
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   580
        selection := self selection.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   581
        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
   582
    ]
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   583
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   584
    "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
   585
    "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
   586
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   587
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   588
updateSelectionFromCursor
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   589
    | pos root selection |
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
    pos := sourceView characterPositionOfCursor.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   592
    root := self parseTree value root.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   593
    selection := root leafNodeAt: pos.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   594
    selection notNil ifTrue:[ 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   595
        | item |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   596
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   597
        item := selection.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   598
        [ item notNil ] whileTrue:[ 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   599
            item expand.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   600
            item := item parent.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   601
        ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   602
        self selectionHolder value: selection
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   603
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   604
    ].
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
    "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
   607
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   608
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   609
updateSourceViewSelection
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   610
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   611
    | astNode parseNode startPosition stopPosition |
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   612
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   613
    sourceView ifNil:[^self].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   614
    (astNode := self selection) ifNil:[^self].
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   615
    (parseNode := astNode node) isNil ifTrue:[ ^ self ].
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   616
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   617
    (startPosition := parseNode startPosition)
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   618
        ifNil:[^sourceView unselect].
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   619
    (stopPosition := parseNode endPosition)
0
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
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   622
    "/ avoid cyclic update (from changed cursor)
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   623
    "/ (which would deselect again)
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   624
    sourceView cursorLineHolder withoutUpdating:self do:[
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   625
        sourceView cursorColHolder withoutUpdating:self do:[   
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   626
            sourceView selectFromCharacterPosition: startPosition to: stopPosition.
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   627
            sourceView makeCursorVisible
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   628
        ]
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   629
    ]
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   630
    "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
   631
    "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
   632
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   633
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   634
!ParseTreeInspector methodsFor:'menu actions'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   635
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   636
queryTreeMenuInspectAstNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   637
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   638
    ^self selection node inspect
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   639
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   640
    "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
   641
    "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
   642
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   643
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   644
!ParseTreeInspector::ParseTreeItem class methodsFor:'documentation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   645
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   646
version
911
60c49fec7270 Fix version_CVS
Stefan Vogel <sv@exept.de>
parents: 325
diff changeset
   647
    ^'$Header$'
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   648
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   649
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   650
!ParseTreeInspector::ParseTreeItem methodsFor:'accessing'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   651
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
    ^ astNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   654
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   655
    "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
   656
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   657
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
    astNode := anAstNode.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   660
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   661
    "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
   662
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   663
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   664
astNodeName
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   665
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   666
    ^astNode class name
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   667
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   668
    "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
   669
    "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
   670
    "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
   671
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   672
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   673
children
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   674
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   675
    children isNil ifTrue:[
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   676
        children := OrderedCollection new.
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   677
        astNode notNil ifTrue:[
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   678
            astNode childNamesAndValuesDo:[:ivarName :astNode|
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   679
                astNode notNil ifTrue:[
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   680
                    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
   681
                                    ivarName: ivarName;
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   682
                                    astNode: astNode;
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   683
                                    parent: self)
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   684
                ]
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   685
            ].
0
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
    ].
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   688
    ^children
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   689
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   690
    "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
   691
    "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
   692
    "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
   693
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   694
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   695
icon
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   696
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   697
    ^nil
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   698
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   699
    "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
   700
    "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
   701
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   702
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
    ^ ivarName ? '?'
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   705
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   706
    "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
   707
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   708
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
    ivarName := something.
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   711
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   712
    "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
   713
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   714
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   715
label
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   716
    | label start stop optionalSelector |
266
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   717
548a8c5063e2 Fix in ParseTreeInspector: allow for nil AST node.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 252
diff changeset
   718
    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
   719
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   720
    start := astNode startPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   721
    stop := astNode endPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   722
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   723
    astNode isMessage ifTrue:[
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   724
        optionalSelector := ' #',astNode selector allBold.
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   725
    ] ifFalse:[
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   726
        optionalSelector := ''
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   727
    ].
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   728
    label := '%1 {%2%5} [%3..%4]' 
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   729
                bindWith: self ivarName
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   730
                    with: self astNodeName
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   731
                    with: start ? '?'
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   732
                    with: stop ? '?'
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   733
                    with: optionalSelector.
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   734
196
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   735
    (start isNil or:[ stop isNil ]) ifTrue:[ 
950
105d05210aa3 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 911
diff changeset
   736
        label := label withColor: 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
   737
    ].
c21c3e61a377 Fixes for ParseNodeInspector. Display nodes with no source position info in red.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 71
diff changeset
   738
    ^ label
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   739
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   740
    "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
   741
    "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
   742
    "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
   743
!
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   744
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   745
leafNodeAt: pos
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   746
    | start stop |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   747
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   748
    start := astNode startPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   749
    stop := astNode endPosition.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   750
    self children do:[:each | 
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   751
        | leaf |
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   752
        leaf := each leafNodeAt: pos.            
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   753
        leaf notNil ifTrue:[ ^ leaf ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   754
    ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   755
    (start notNil and:[stop notNil]) ifTrue:[
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   756
        (pos between: start and: stop) ifTrue:[ ^ self ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   757
    ].
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   758
    ^ nil.
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   759
47c92efe24e5 Fixes/improvements in ParseNodeInspector.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 193
diff changeset
   760
    "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
   761
!
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   762
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   763
node
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   764
    ^ astNode
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   765
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   766
    "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
   767
    "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
   768
! !
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   769
197
49a859d7aa94 Renamed ParseNodeInspector to ParseTreeInspector
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 196
diff changeset
   770
!ParseTreeInspector class methodsFor:'documentation'!
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   771
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   772
version
911
60c49fec7270 Fix version_CVS
Stefan Vogel <sv@exept.de>
parents: 325
diff changeset
   773
    ^ '$Header$'
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   774
!
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   775
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   776
version_CVS
911
60c49fec7270 Fix version_CVS
Stefan Vogel <sv@exept.de>
parents: 325
diff changeset
   777
    ^ '$Header$'
325
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   778
!
64588262c596 initial checkin
Claus Gittinger <cg@exept.de>
parents: 320
diff changeset
   779
29
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   780
version_HG
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   781
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   782
    ^ '$Changeset: <not expanded> $'
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   783
!
fe650a6e5704 Moved NavigationState>>selectedClasses to package stx:libtool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 18
diff changeset
   784
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   785
version_SVN
911
60c49fec7270 Fix version_CVS
Stefan Vogel <sv@exept.de>
parents: 325
diff changeset
   786
    ^ '$Id$'
0
893cc7b0ed1d copied smallsense from old /branches/jv
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   787
! !
18
cebd9550b288 branch jv-experiments merged back
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15
diff changeset
   788