SmaCC__SmaCCParserGenerator.st
author vranyj1
Tue, 18 Nov 2008 19:09:05 +0000
changeset 5 79cd4e3c7011
parent 1 b8cca2663544
child 10 7d698124b227
permissions -rw-r--r--
Added option "Show item sets". Fixed option "Generate symbol set comments"
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     1
"{ Package: 'stx:goodies/smaCC' }"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     2
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     3
"{ NameSpace: SmaCC }"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     4
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     5
ApplicationModel subclass:#SmaCCParserGenerator
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     6
	instanceVariableNames:'tabList parserClassNameHolder scannerClassNameHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     7
		conflictHolder scannerHolder parserHolder testHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     8
		generateDefinitionCommentsHolder generateSymbolCommentsHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
     9
		generateItemSetCommentsHolder allowUnicodeHolder ignoreCaseHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    10
		editAcceptChannel loadScannerAndParserFromFileHolder
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
    11
		showSymbolSetHolder parserEditTextView scannerEditTextView
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
    12
		parserDefinitionFileHolder scannerDefinitionFileHolder
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
    13
		tabSelectionHolder'
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    14
	classVariableNames:'ShowPrecedenceConflicts'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    15
	poolDictionaries:''
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    16
	category:'SmaCC-UI'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    17
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    18
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    19
!SmaCCParserGenerator class methodsFor:'documentation'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    20
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    21
examples
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    22
"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    23
    openSmaCC
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    24
        <menuItem: 'SmaCC Parser Generator'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    25
        nameKey: nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    26
        menu: #(#menuBar #tools)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    27
                position: 30.00>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    28
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    29
        SmaCC.SmaCCParserGenerator open
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    30
"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    31
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    32
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    33
!SmaCCParserGenerator class methodsFor:'initialization'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    34
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    35
initialize
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    36
    ShowPrecedenceConflicts := false.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    37
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    38
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    39
!SmaCCParserGenerator class methodsFor:'interface specs'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    40
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    41
compileWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    42
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    43
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    44
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    45
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    46
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    47
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    48
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    49
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#compileWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    50
     SmaCC::SmaCCParserGenerator new openInterface:#compileWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    51
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    52
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    53
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    54
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    55
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    56
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    57
        name: compileWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    58
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    59
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    60
          label: 'Compile Grammar Tab'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    61
          name: 'Compile Grammar Tab'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    62
          bounds: (Rectangle 0 0 696 468)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    63
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    64
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    65
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    66
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    67
           (VerticalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    68
              name: 'ContentPanel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    69
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    70
              horizontalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    71
              verticalLayout: top
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    72
              horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    73
              verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    74
              component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    75
             (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    76
                collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    77
                 (FramedBoxSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    78
                    label: 'Classes'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    79
                    name: 'ClassesBox'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    80
                    labelPosition: topLeft
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    81
                    translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    82
                    component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    83
                   (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    84
                      collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    85
                       (VerticalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    86
                          name: 'ClassesBoxContent'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    87
                          layout: (LayoutFrame 0 0 0 0 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    88
                          horizontalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    89
                          verticalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    90
                          horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    91
                          verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    92
                          elementsChangeSize: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    93
                          component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    94
                         (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    95
                            collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    96
                             (HorizontalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    97
                                name: 'ClassesBoxContentScannerClass'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    98
                                horizontalLayout: left
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
    99
                                verticalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   100
                                horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   101
                                verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   102
                                component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   103
                               (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   104
                                  collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   105
                                   (LabelSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   106
                                      label: 'Scanner class:'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   107
                                      name: 'ScannerClassLabel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   108
                                      resizeForLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   109
                                      adjust: left
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   110
                                      extent: (Point 110 27)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   111
                                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   112
                                   (InputFieldSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   113
                                      name: 'ScannerClassName'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   114
                                      model: scannerClassNameHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   115
                                      type: string
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   116
                                      acceptOnLeave: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   117
                                      acceptOnLostFocus: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   118
                                      acceptOnPointerLeave: true
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   119
                                      extent: (Point 300 27)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   120
                                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   121
                                   (ActionButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   122
                                      label: 'Select'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   123
                                      name: 'ScannerClassFindButton'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   124
                                      model: findScannerClass
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   125
                                      defaultable: true
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   126
                                      extent: (Point 55 27)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   127
                                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   128
                                   )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   129
                                 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   130
                                )
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   131
                                extent: (Point 652 27)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   132
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   133
                             (HorizontalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   134
                                name: 'ClassesBoxContentParserClass'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   135
                                horizontalLayout: left
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   136
                                verticalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   137
                                horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   138
                                verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   139
                                component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   140
                               (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   141
                                  collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   142
                                   (LabelSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   143
                                      label: 'Parser class:'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   144
                                      name: 'ParserClassLabel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   145
                                      adjust: left
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   146
                                      extent: (Point 110 26)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   147
                                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   148
                                   (InputFieldSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   149
                                      name: 'ParserClassName'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   150
                                      model: parserClassNameHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   151
                                      type: string
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   152
                                      acceptOnLeave: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   153
                                      acceptOnLostFocus: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   154
                                      acceptOnPointerLeave: true
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   155
                                      extent: (Point 300 26)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   156
                                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   157
                                   (ActionButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   158
                                      label: 'Select'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   159
                                      name: 'ParserClassFindButton'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   160
                                      model: findParserClass
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   161
                                      defaultable: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   162
                                      useDefaultExtent: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   163
                                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   164
                                   )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   165
                                 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   166
                                )
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   167
                                extent: (Point 652 26)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   168
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   169
                             )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   170
                           
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   171
                          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   172
                        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   173
                       )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   174
                     
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   175
                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   176
                    extent: (Point 696 100)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   177
                  )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   178
                 (FramedBoxSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   179
                    label: 'Options'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   180
                    name: 'OptionsBox'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   181
                    labelPosition: topLeft
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   182
                    translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   183
                    component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   184
                   (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   185
                      collection: (
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   186
                       (VerticalPanelViewSpec
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   187
                          name: 'Options1'
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   188
                          layout: (LayoutFrame 0 0 0 0 0 0.5 0 1)
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   189
                          horizontalLayout: fit
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   190
                          verticalLayout: top
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   191
                          horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   192
                          verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   193
                          component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   194
                         (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   195
                            collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   196
                             (CheckBoxSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   197
                                label: 'Load scanner and parser from file'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   198
                                name: 'loadScannerAndParserFromFiles'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   199
                                model: loadScannerAndParserFromFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   200
                                translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   201
                                useDefaultExtent: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   202
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   203
                             (CheckBoxSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   204
                                label: 'Allow Unicode Characters'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   205
                                name: allowUnicode
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   206
                                model: allowUnicodeHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   207
                                useDefaultExtent: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   208
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   209
                             (CheckBoxSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   210
                                label: 'Ignore Case'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   211
                                name: ignoreCase
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   212
                                model: ignoreCaseHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   213
                                useDefaultExtent: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   214
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   215
                             )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   216
                           
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   217
                          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   218
                        )
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   219
                       (VerticalPanelViewSpec
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   220
                          name: 'Options2'
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   221
                          layout: (LayoutFrame 0 0.5 0 0 0 1 0 1)
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   222
                          horizontalLayout: fit
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   223
                          verticalLayout: top
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   224
                          horizontalSpace: 3
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   225
                          verticalSpace: 3
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   226
                          component: 
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   227
                         (SpecCollection
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   228
                            collection: (
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   229
                             (CheckBoxSpec
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   230
                                label: 'Generate symbol comment'
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   231
                                name: generateSymbolComments
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   232
                                model: generateSymbolCommentsHolder
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   233
                                useDefaultExtent: true
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   234
                              )
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   235
                             (CheckBoxSpec
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   236
                                label: 'Generate item set comments'
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   237
                                name: generateItemSetComments
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   238
                                model: generateItemSetCommentsHolder
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   239
                                useDefaultExtent: true
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   240
                              )
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   241
                             (CheckBoxSpec
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   242
                                label: 'Generate definition comments'
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   243
                                name: generateDefinitionComments
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   244
                                model: generateDefinitionCommentsHolder
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   245
                                useDefaultExtent: true
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   246
                              )
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   247
                             (CheckBoxSpec
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   248
                                label: 'Show item set'
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   249
                                name: 'ShowSymbolSet'
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   250
                                model: showSymbolSetHolder
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   251
                                translateLabel: true
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   252
                                extent: (Point 326 21)
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   253
                              )
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   254
                             )
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   255
                           
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   256
                          )
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   257
                        )
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   258
                       )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   259
                     
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   260
                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   261
                    useDefaultExtent: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   262
                  )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   263
                 (FramedBoxSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   264
                    label: 'Files'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   265
                    name: 'FileBox'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   266
                    labelPosition: topLeft
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   267
                    translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   268
                    component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   269
                   (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   270
                      collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   271
                       (VerticalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   272
                          name: 'FileBoxLabelPanel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   273
                          layout: (LayoutFrame 0 0 0 0 100 0 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   274
                          horizontalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   275
                          verticalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   276
                          horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   277
                          verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   278
                          component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   279
                         (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   280
                            collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   281
                             (LabelSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   282
                                label: 'Scanner:'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   283
                                name: 'ScanneFileLabel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   284
                                translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   285
                                adjust: right
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   286
                                extent: (Point 100 27)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   287
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   288
                             (LabelSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   289
                                label: 'Parser:'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   290
                                name: 'ParserFileLabel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   291
                                translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   292
                                adjust: right
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   293
                                extent: (Point 100 26)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   294
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   295
                             )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   296
                           
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   297
                          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   298
                        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   299
                       (VerticalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   300
                          name: 'FileBoxFilenameEditPanel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   301
                          layout: (LayoutFrame 100 0 0 0 -30 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   302
                          horizontalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   303
                          verticalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   304
                          horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   305
                          verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   306
                          component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   307
                         (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   308
                            collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   309
                             (FilenameInputFieldSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   310
                                name: 'ScannerFile'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   311
                                enableChannel: loadScannerAndParserFromFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   312
                                model: scannerDefinitionFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   313
                                acceptOnPointerLeave: false
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   314
                                extent: (Point 522 27)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   315
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   316
                             (FilenameInputFieldSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   317
                                name: 'ParserFile'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   318
                                enableChannel: loadScannerAndParserFromFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   319
                                model: parserDefinitionFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   320
                                acceptOnPointerLeave: false
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   321
                                extent: (Point 522 26)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   322
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   323
                             )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   324
                           
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   325
                          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   326
                        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   327
                       (VerticalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   328
                          name: 'FileBoxFilenameButtomPanel'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   329
                          layout: (LayoutFrame -30 1 0 0 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   330
                          horizontalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   331
                          verticalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   332
                          horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   333
                          verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   334
                          component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   335
                         (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   336
                            collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   337
                             (ArrowButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   338
                                name: 'ScannerFileSelector'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   339
                                model: selectScannerFile
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   340
                                enableChannel: loadScannerAndParserFromFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   341
                                isTriggerOnDown: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   342
                                actionValue: ''
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   343
                                direction: down
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   344
                                extent: (Point 30 27)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   345
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   346
                             (ArrowButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   347
                                name: 'ParserFileSelection'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   348
                                model: selectParserFile
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   349
                                enableChannel: loadScannerAndParserFromFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   350
                                isTriggerOnDown: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   351
                                actionValue: ''
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   352
                                direction: down
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   353
                                extent: (Point 30 26)
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   354
                              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   355
                             )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   356
                           
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   357
                          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   358
                        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   359
                       )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   360
                     
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   361
                    )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   362
                    extent: (Point 696 100)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   363
                  )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   364
                 )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   365
               
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   366
              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   367
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   368
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   369
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   370
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   371
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   372
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
   373
    "Modified: / 18-11-2008 / 19:58:37 / Jan Vrany <vranyj1@fel.cvut.cz>"
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   374
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   375
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   376
generateButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   377
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   378
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   379
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   380
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   381
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   382
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   383
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   384
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#generateButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   385
     SmaCC::SmaCCParserGenerator new openInterface:#generateButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   386
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   387
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   388
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   389
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   390
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   391
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   392
        name: generateButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   393
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   394
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   395
          label: 'GenerateButtonCanvas'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   396
          name: 'GenerateButtonCanvas'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   397
          min: (Point 10 10)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   398
          bounds: (Rectangle 0 0 585 58)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   399
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   400
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   401
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   402
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   403
           (ActionButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   404
              label: 'Compile LALR(1)'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   405
              name: 'GenerateLARL'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   406
              layout: (LayoutFrame 0 0 0 0 0 0.5 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   407
              translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   408
              model: compileLALR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   409
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   410
           (ActionButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   411
              label: 'Compile LR(1)'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   412
              name: 'GenerateLR'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   413
              layout: (LayoutFrame 0 0.5 0 0 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   414
              translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   415
              model: compileLR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   416
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   417
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   418
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   419
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   420
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   421
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   422
    "Modified: / 18-03-2006 / 20:44:41 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   423
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   424
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   425
messagesWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   426
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   427
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   428
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   429
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   430
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   431
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   432
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   433
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#messagesWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   434
     SmaCC::SmaCCParserGenerator new openInterface:#messagesWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   435
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   436
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   437
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   438
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   439
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   440
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   441
        name: messagesWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   442
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   443
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   444
          label: 'Messages'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   445
          name: 'Messages'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   446
          min: (Point 10 10)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   447
          bounds: (Rectangle 0 0 300 300)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   448
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   449
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   450
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   451
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   452
           (TextEditorSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   453
              name: 'Messages'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   454
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   455
              model: conflictHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   456
              hasHorizontalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   457
              hasVerticalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   458
              miniScrollerHorizontal: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   459
              tabRequiresControl: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   460
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   461
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   462
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   463
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   464
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   465
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   466
    "Modified: / 14-02-2008 / 10:49:02 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   467
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   468
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   469
old_windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   470
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   471
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   472
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   473
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   474
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   475
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   476
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   477
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   478
     SmaCC::SmaCCParserGenerator new openInterface:#windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   479
     SmaCC::SmaCCParserGenerator open
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   480
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   481
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   482
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   483
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   484
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   485
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   486
        name: windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   487
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   488
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   489
          label: 'SmaCC Parser Generator'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   490
          name: 'SmaCC Parser Generator'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   491
          min: (Point 200 200)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   492
          bounds: (Rectangle 0 0 634 524)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   493
          menu: mainMenu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   494
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   495
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   496
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   497
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   498
           (TabControlSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   499
              name: subcanvas
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   500
              layout: (LayoutFrame 2 0 2 0 -2 1 -2 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   501
              model: tabList
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   502
              labels: ()
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   503
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   504
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   505
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   506
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   507
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   508
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   509
    "Created: / 11-05-2007 / 09:55:16 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   510
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   511
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   512
parserWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   513
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   514
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   515
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   516
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   517
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   518
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   519
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   520
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#parserWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   521
     SmaCC::SmaCCParserGenerator new openInterface:#parserWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   522
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   523
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   524
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   525
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   526
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   527
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   528
        name: parserWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   529
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   530
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   531
          label: 'Parser Definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   532
          name: 'Parser Definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   533
          bounds: (Rectangle 0 0 578 352)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   534
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   535
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   536
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   537
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   538
           (TextEditorSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   539
              name: 'Parser'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   540
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   541
              model: parserHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   542
              hasHorizontalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   543
              hasVerticalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   544
              miniScrollerHorizontal: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   545
              acceptChannel: editAcceptChannel
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   546
              tabRequiresControl: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   547
              postBuildCallback: postBuildParserDefinitionView:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   548
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   549
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   550
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   551
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   552
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   553
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   554
    "Modified: / 11-05-2007 / 12:30:42 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   555
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   556
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   557
scannerWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   558
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   559
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   560
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   561
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   562
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   563
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   564
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   565
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#scannerWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   566
     SmaCC::SmaCCParserGenerator new openInterface:#scannerWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   567
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   568
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   569
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   570
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   571
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   572
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   573
        name: scannerWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   574
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   575
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   576
          label: 'Scanner Definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   577
          name: 'Scanner Definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   578
          bounds: (Rectangle 0 0 200 200)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   579
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   580
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   581
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   582
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   583
           (TextEditorSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   584
              name: 'ScannerView'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   585
              layout: (LayoutFrame 0 0 0 0 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   586
              model: scannerHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   587
              hasHorizontalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   588
              hasVerticalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   589
              miniScrollerHorizontal: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   590
              acceptChannel: editAcceptChannel
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   591
              tabRequiresControl: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   592
              postBuildCallback: postBuildScannerDefinitionView:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   593
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   594
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   595
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   596
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   597
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   598
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   599
    "Modified: / 11-05-2007 / 12:31:31 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   600
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   601
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   602
testWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   603
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   604
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   605
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   606
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   607
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   608
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   609
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   610
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#testWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   611
     SmaCC::SmaCCParserGenerator new openInterface:#testWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   612
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   613
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   614
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   615
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   616
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   617
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   618
        name: testWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   619
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   620
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   621
          label: 'Unlabeled Canvas'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   622
          name: 'Unlabeled Canvas'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   623
          bounds: (Rectangle 0 0 273 200)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   624
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   625
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   626
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   627
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   628
           (TextEditorSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   629
              name: text
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   630
              layout: (LayoutFrame 0 0 0 0 0 1 -25 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   631
              model: testHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   632
              hasHorizontalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   633
              hasVerticalScrollBar: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   634
              miniScrollerHorizontal: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   635
              acceptChannel: editAcceptChannel
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   636
              tabRequiresControl: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   637
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   638
           (HorizontalPanelViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   639
              name: 'HorizontalPanel1'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   640
              layout: (LayoutFrame 0 0 -25 1 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   641
              horizontalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   642
              verticalLayout: fit
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   643
              horizontalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   644
              verticalSpace: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   645
              component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   646
             (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   647
                collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   648
                 (ActionButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   649
                    label: 'Parse'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   650
                    name: parse
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   651
                    model: parse
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   652
                    extent: (Point 135 25)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   653
                  )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   654
                 (ActionButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   655
                    label: 'Parse and Inspect'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   656
                    name: parseAndInspect
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   657
                    model: parseAndInspect
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   658
                    extent: (Point 135 25)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   659
                  )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   660
                 )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   661
               
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   662
              )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   663
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   664
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   665
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   666
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   667
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   668
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   669
    "Modified: / 11-05-2007 / 21:38:24 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   670
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   671
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   672
windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   673
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   674
     by the UIPainter of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   675
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   676
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   677
     the UIPainter may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   678
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   679
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   680
     UIPainter new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   681
     SmaCC::SmaCCParserGenerator new openInterface:#windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   682
     SmaCC::SmaCCParserGenerator open
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   683
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   684
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   685
    <resource: #canvas>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   686
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   687
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   688
     #(FullSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   689
        name: windowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   690
        window: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   691
       (WindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   692
          label: 'SmaCC Parser Generator'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   693
          name: 'SmaCC Parser Generator'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   694
          min: (Point 200 200)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   695
          bounds: (Rectangle 0 0 638 466)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   696
          menu: mainMenu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   697
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   698
        component: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   699
       (SpecCollection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   700
          collection: (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   701
           (NoteBookViewSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   702
              name: 'Tools'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   703
              layout: (LayoutFrame 0 0 0 0 0 1 -25 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   704
              model: tabSelectionHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   705
              menu: tabList
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   706
              useIndex: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   707
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   708
           (UISubSpecification
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   709
              name: 'CompileButtons'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   710
              layout: (LayoutFrame 0 0 -25 1 0 1 0 1)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   711
              minorKey: generateButtonSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   712
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   713
           )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   714
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   715
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   716
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   717
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   718
    "Modified: / 14-02-2008 / 11:28:11 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   719
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   720
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   721
!SmaCCParserGenerator class methodsFor:'list specs'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   722
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   723
tabList
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   724
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   725
     by the TabListEditor of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   726
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   727
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   728
     the TabListEditor may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   729
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   730
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   731
     TabListEditor new openOnClass: self andSelector:#tabList
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   732
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   733
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   734
    <resource: #tabList>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   735
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   736
    ^     #(
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   737
       (TabItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   738
          label: 'Compile options'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   739
          createNewBuilder: false
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   740
          minorKey: compileWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   741
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   742
       (TabItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   743
          label: 'Messages'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   744
          createNewBuilder: false
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   745
          minorKey: messagesWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   746
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   747
       (TabItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   748
          label: 'Scanner definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   749
          createNewBuilder: false
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   750
          minorKey: scannerWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   751
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   752
       (TabItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   753
          label: 'Parser definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   754
          createNewBuilder: false
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   755
          minorKey: parserWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   756
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   757
       (TabItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   758
          label: 'Test workspace'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   759
          createNewBuilder: false
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   760
          minorKey: testWindowSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   761
        )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   762
       )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   763
     
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   764
      collect:[:aTab| TabItem new fromLiteralArrayEncoding:aTab ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   765
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   766
    "Modified: / 14-02-2008 / 11:02:24 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   767
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   768
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   769
!SmaCCParserGenerator class methodsFor:'menu specs'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   770
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   771
mainMenu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   772
    "This resource specification was automatically generated
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   773
     by the MenuEditor of ST/X."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   774
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   775
    "Do not manually edit this!! If it is corrupted,
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   776
     the MenuEditor may not be able to read the specification."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   777
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   778
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   779
     MenuEditor new openOnClass:SmaCC::SmaCCParserGenerator andSelector:#mainMenu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   780
     (Menu new fromLiteralArrayEncoding:(SmaCC::SmaCCParserGenerator mainMenu)) startUp
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   781
    "
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   782
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   783
    <resource: #menu>
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   784
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   785
    ^ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   786
     #(Menu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   787
        (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   788
         (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   789
            label: 'File'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   790
            translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   791
            submenu: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   792
           (Menu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   793
              (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   794
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   795
                  label: 'Load scanner definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   796
                  itemValue: loadScannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   797
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   798
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   799
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   800
                  label: 'Load parser definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   801
                  itemValue: loadParserDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   802
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   803
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   804
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   805
                  label: '-'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   806
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   807
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   808
                  label: 'Save scanner definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   809
                  itemValue: saveScannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   810
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   811
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   812
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   813
                  label: 'Save parser definition'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   814
                  itemValue: saveParserDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   815
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   816
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   817
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   818
                  label: '-'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   819
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   820
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   821
                  label: 'Exit'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   822
                  itemValue: closeRequest
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   823
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   824
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   825
               )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   826
              nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   827
              nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   828
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   829
          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   830
         (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   831
            label: 'Grammar'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   832
            translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   833
            submenu: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   834
           (Menu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   835
              (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   836
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   837
                  label: 'Compile LALR(1)'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   838
                  itemValue: compileLALR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   839
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   840
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   841
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   842
                  label: 'Compile LR(1)'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   843
                  itemValue: compileLR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   844
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   845
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   846
               )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   847
              nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   848
              nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   849
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   850
          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   851
         (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   852
            label: 'Help'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   853
            translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   854
            startGroup: right
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   855
            submenu: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   856
           (Menu
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   857
              (
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   858
               (MenuItem
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   859
                  label: 'About this Application'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   860
                  itemValue: openAboutThisApplication
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   861
                  translateLabel: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   862
                )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   863
               )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   864
              nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   865
              nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   866
            )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   867
          )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   868
         )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   869
        nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   870
        nil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   871
      )
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   872
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   873
    "Modified: / 12-05-2007 / 21:08:14 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   874
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   875
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   876
!SmaCCParserGenerator methodsFor:'accessing'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   877
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   878
loadScannerAndParserFromFile
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   879
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   880
    ^self loadScannerAndParserFromFileHolder value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   881
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   882
    "Created: / 11-05-2007 / 12:53:44 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   883
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   884
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   885
parserClass
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   886
	^self parserClassNameHolder value asQualifiedReference value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   887
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   888
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   889
parserClassName
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   890
    ^ self parserClassNameHolder value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   891
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   892
    "Created: / 11-05-2007 / 12:41:24 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   893
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   894
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   895
parserDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   896
    ^ self loadScannerAndParserFromFileHolder value 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   897
        ifTrue:[ self parserDefinitionFile contents asString ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   898
        ifFalse:[ self parserHolder value ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   899
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   900
    "Created: / 18-03-2006 / 16:53:09 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   901
    "Modified: / 11-05-2007 / 12:52:36 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   902
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   903
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   904
parserDefinition: aString
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   905
    ^ self parserHolder value: aString
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   906
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   907
    "Created: / 12-05-2007 / 20:48:49 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   908
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   909
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   910
parserDefinitionFile
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   911
    ^ self parserDefinitionFileHolder value asFilename
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   912
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   913
    "Created: / 11-05-2007 / 12:52:36 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   914
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   915
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   916
scannerClass
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   917
        ^self scannerClassNameHolder value asQualifiedReference value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   918
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   919
    "Created: / 11-05-2007 / 12:59:45 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   920
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   921
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   922
scannerClassName
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   923
    ^ self scannerClassNameHolder value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   924
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   925
    "Created: / 11-05-2007 / 12:41:07 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   926
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   927
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   928
scannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   929
    ^ self loadScannerAndParserFromFileHolder value 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   930
        ifTrue:[ self scannerDefinitionFile contents asString ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   931
        ifFalse:[ self scannerHolder value ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   932
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   933
    "Created: / 18-03-2006 / 16:53:09 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   934
    "Modified: / 11-05-2007 / 12:53:10 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   935
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   936
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   937
scannerDefinition: aString
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   938
    ^ self scannerHolder value: aString
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   939
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   940
    "Created: / 12-05-2007 / 20:49:01 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   941
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   942
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   943
scannerDefinitionFile
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   944
    ^ self scannerDefinitionFileHolder value asFilename
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   945
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   946
    "Created: / 11-05-2007 / 12:53:10 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   947
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   948
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   949
tabSelection: index
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   950
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   951
    self tabSelectionHolder value:2
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   952
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   953
    "Created: / 14-02-2008 / 11:29:34 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   954
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   955
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   956
tabSelectionToMessages
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   957
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   958
    self tabSelection: 2
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   959
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   960
    "Created: / 14-02-2008 / 11:30:33 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   961
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   962
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   963
tabSelectionToOptions
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   964
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   965
    self tabSelection: 1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   966
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   967
    "Created: / 14-02-2008 / 11:30:24 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   968
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   969
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   970
tabSelectionToParserDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   971
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   972
    self tabSelection: 4
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   973
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   974
    "Created: / 14-02-2008 / 11:30:48 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   975
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   976
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   977
tabSelectionToScannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   978
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   979
    self tabSelection: 3
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   980
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   981
    "Created: / 14-02-2008 / 11:30:43 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   982
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   983
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   984
!SmaCCParserGenerator methodsFor:'actions'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   985
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   986
aboutThisApplicationText
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   987
    "text for an about box for this application."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   988
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   989
    |rev clsRev msg|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   990
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   991
    rev := ''.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   992
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   993
    (clsRev := self class revision) notNil ifTrue: [rev := '  (rev: ', clsRev printString, ')'].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   994
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   995
    msg := 'SmaCC Compiler-Compiler framework.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   996
Written by John Brant and Don Roberts.\\
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   997
Smalltalk/X UI by Jan Vrany.\\
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   998
Available for VisualWorks, Dolphin, VisualAge and Smalltalk/X.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
   999
\\' withCRs , self class name asBoldText, rev.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1000
    ^ msg
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1001
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1002
    "Created: / 13-11-2001 / 12:28:36 / cg"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1003
    "Modified: / 11-05-2007 / 12:24:42 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1004
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1005
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1006
compileLALR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1007
        self compile: #LALR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1008
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1009
    "Modified: / 11-05-2007 / 12:32:58 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1010
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1011
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1012
compileLR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1013
	self compile: #LR1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1014
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1015
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1016
findParserClass
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1017
        | class |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1018
        class := self choose: 'What class do you want to use?'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1019
                                from: (SmaCCParser allSubclasses asSortedCollection: [:a :b | a name < b name]).
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1020
        class isNil ifTrue: [^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1021
        self parserClassNameHolder value: class fullName.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1022
        (class class includesSelector: #parserDefinitionComment) 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1023
                ifTrue: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1024
                        [(self confirm: 'Do you wish to load the parser definition?') 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1025
                                ifTrue: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1026
                                        [self parserHolder value: (self 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1027
                                                                removeCommentedPartOf: (class class sourceCodeAt: #parserDefinitionComment))]]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1028
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1029
    "Modified: / 11-05-2007 / 12:27:46 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1030
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1031
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1032
findScannerClass
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1033
	| class |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1034
	class := self choose: 'What class do you want to use?'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1035
				from: (SmaCCScanner allSubclasses asSortedCollection: [:a :b | a name < b name]).
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1036
	class isNil ifTrue: [^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1037
	self scannerClassNameHolder value: class fullName.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1038
	(class class includesSelector: #scannerDefinitionComment) 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1039
		ifTrue: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1040
			[(self confirm: 'Do you wish to load the scanner definition?') 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1041
				ifTrue: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1042
					[self scannerHolder value: (self 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1043
								removeCommentedPartOf: (class class sourceCodeAt: #scannerDefinitionComment))]]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1044
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1045
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1046
loadParserDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1047
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1048
    | file stream |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1049
    (file := Dialog requestFileName:'Select parser definition file' default:'parser.txt')
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1050
        isNilOrEmptyCollection ifTrue:[^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1051
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1052
    file asFilename exists ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1053
        [(Dialog warn:'File does not exist.').^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1054
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1055
    stream := file asFilename readStream.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1056
    [ self parserDefinition: stream contents asString ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1057
        ensure: [stream close]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1058
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1059
    "Created: / 12-05-2007 / 20:50:34 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1060
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1061
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1062
loadScannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1063
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1064
    | file stream |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1065
    (file := Dialog requestFileName:'Select scanner definition file' default:'parser.txt')
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1066
        isNilOrEmptyCollection ifTrue:[^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1067
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1068
    file asFilename exists ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1069
        [(Dialog warn:'File does not exist.').^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1070
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1071
    stream := file asFilename readStream.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1072
    [ self scannerDefinition: stream contents asString ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1073
        ensure: [stream close]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1074
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1075
    "Created: / 12-05-2007 / 20:52:19 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1076
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1077
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1078
openAboutThisAppliaction
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1079
    Dialog
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1080
        about:(resources string:self aboutThisApplicationText)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1081
        label:(resources string:self aboutThisApplicationLabel)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1082
        icon:self aboutImage
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1083
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1084
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1085
openDocumentation
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1086
    "opens the documentation file of the Parsergenerator"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1087
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1088
    HTMLDocumentView openFullOnDocumentationFile:'../../../goodies/smaCC/documentation/Tutorial.html'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1089
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1090
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1091
parse
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1092
        self editAcceptChannel value:true.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1093
        self parseAndEvaluate: [:each | self warn: 'Parses without errors']
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1094
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1095
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1096
parseAndInspect
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1097
        self editAcceptChannel value:true.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1098
        self parseAndEvaluate: [:each | each inspect]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1099
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1100
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1101
saveParserDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1102
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1103
    | file stream |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1104
    (file := Dialog requestFileName:'Save parser definition as' default:'parser.txt')
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1105
        isNilOrEmptyCollection ifTrue:[^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1106
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1107
    file asFilename exists ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1108
        [(Dialog confirm:'File exists. Overwrite?') ifFalse:[^self]].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1109
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1110
    stream := file asFilename writeStream.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1111
    [ stream nextPutAll:self parserDefinition ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1112
        ensure: [stream close]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1113
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1114
    "Created: / 12-05-2007 / 20:46:15 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1115
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1116
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1117
saveScannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1118
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1119
    | file stream |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1120
    (file := Dialog requestFileName:'Save scanner definition as' default:'scanner.txt')
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1121
        isNilOrEmptyCollection ifTrue:[^self].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1122
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1123
    file asFilename exists ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1124
        [(Dialog confirm:'File exists. Overwrite?') ifFalse:[^self]].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1125
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1126
    stream := file asFilename writeStream.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1127
    [ stream nextPutAll:self scannerDefinition ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1128
        ensure: [stream close]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1129
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1130
    "Created: / 12-05-2007 / 20:46:50 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1131
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1132
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1133
selectParserFile
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1134
    |fileName|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1135
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1136
    (fileName := Dialog 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1137
                    requestFileName:'Select parser definition file' 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1138
                    default:self guessParserDefinitionFilename 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1139
                    fromDirectory:self guessDefinitionFileDirectory) 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1140
        isNilOrEmptyCollection 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1141
            ifFalse:[ self parserDefinitionFileHolder value:fileName ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1142
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1143
    "Modified: / 11-05-2007 / 13:16:01 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1144
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1145
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1146
selectScannerFile
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1147
    |fileName|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1148
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1149
    (fileName := Dialog 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1150
                    requestFileName:'Select parser definition file' 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1151
                    default:self guessScannerDefinitionFilename 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1152
                    fromDirectory:self guessDefinitionFileDirectory) 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1153
         
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1154
        isNilOrEmptyCollection 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1155
            ifFalse:[ self scannerDefinitionFileHolder value:fileName ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1156
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1157
    "Modified: / 11-05-2007 / 13:16:16 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1158
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1159
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1160
!SmaCCParserGenerator methodsFor:'aspects'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1161
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1162
allowUnicodeHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1163
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1164
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1165
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1166
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1167
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1168
	^allowUnicodeHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1169
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1170
			[allowUnicodeHolder := false asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1171
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1172
			[allowUnicodeHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1173
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1174
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1175
conflictHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1176
        "This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1177
        may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1178
        initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1179
        initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1180
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1181
        conflictHolder ifNil: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1182
            [conflictHolder := String new asValue.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1183
            conflictHolder onChangeEvaluate:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1184
                    [self tabSelectionToMessages]].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1185
        ^conflictHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1186
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1187
    "Modified: / 14-02-2008 / 11:35:18 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1188
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1189
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1190
editAcceptChannel
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1191
        ^editAcceptChannel isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1192
                ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1193
                        [editAcceptChannel := TriggerValue new]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1194
                ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1195
                        [editAcceptChannel]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1196
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1197
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1198
generateDefinitionCommentsHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1199
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1200
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1201
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1202
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1203
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1204
	^generateDefinitionCommentsHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1205
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1206
			[generateDefinitionCommentsHolder := false asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1207
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1208
			[generateDefinitionCommentsHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1209
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1210
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1211
generateItemSetCommentsHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1212
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1213
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1214
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1215
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1216
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1217
	^generateItemSetCommentsHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1218
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1219
			[generateItemSetCommentsHolder := false asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1220
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1221
			[generateItemSetCommentsHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1222
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1223
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1224
generateSymbolCommentsHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1225
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1226
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1227
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1228
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1229
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1230
	^generateSymbolCommentsHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1231
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1232
			[generateSymbolCommentsHolder := false asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1233
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1234
			[generateSymbolCommentsHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1235
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1236
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1237
ignoreCaseHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1238
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1239
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1240
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1241
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1242
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1243
	^ignoreCaseHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1244
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1245
			[ignoreCaseHolder := false asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1246
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1247
			[ignoreCaseHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1248
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1249
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1250
loadScannerAndParserFromFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1251
    "automatically generated by UIPainter ..."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1252
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1253
    "*** the code below creates a default model when invoked."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1254
    "*** (which may not be the one you wanted)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1255
    "*** Please change as required and accept it in the browser."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1256
    "*** (and replace this comment by something more useful ;-)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1257
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1258
    loadScannerAndParserFromFileHolder isNil ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1259
        loadScannerAndParserFromFileHolder := false asValue.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1260
"/ if your app needs to be notified of changes, uncomment one of the lines below:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1261
"/       loadScannerAndParserFromFileHolder addDependent:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1262
"/       loadScannerAndParserFromFileHolder onChangeSend:#loadScannerAndParserFromFileHolderChanged to:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1263
    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1264
    ^ loadScannerAndParserFromFileHolder.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1265
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1266
    "Created: / 18-03-2006 / 16:34:16 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1267
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1268
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1269
parserClassNameHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1270
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1271
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1272
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1273
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1274
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1275
	^parserClassNameHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1276
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1277
			[parserClassNameHolder := nil asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1278
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1279
			[parserClassNameHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1280
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1281
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1282
parserDefinitionFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1283
    "automatically generated by UIPainter ..."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1284
    "*** the code below creates a default model when invoked."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1285
    "*** (which may not be the one you wanted)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1286
    "*** Please change as required and accept it in the browser."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1287
    "*** (and replace this comment by something more useful ;-)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1288
    
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1289
    parserDefinitionFileHolder isNil ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1290
        parserDefinitionFileHolder := ValueHolder new.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1291
        
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1292
"/ if your app needs to be notified of changes, uncomment one of the lines below:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1293
"/       parserFileHolder addDependent:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1294
"/       parserFileHolder onChangeSend:#parserFileHolderChanged to:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1295
    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1296
    ^ parserDefinitionFileHolder.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1297
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1298
    "Created: / 11-05-2007 / 12:47:09 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1299
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1300
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1301
parserHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1302
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1303
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1304
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1305
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1306
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1307
	^parserHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1308
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1309
			[parserHolder := String new asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1310
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1311
			[parserHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1312
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1313
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1314
scannerClassNameHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1315
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1316
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1317
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1318
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1319
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1320
	^scannerClassNameHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1321
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1322
			[scannerClassNameHolder := nil asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1323
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1324
			[scannerClassNameHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1325
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1326
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1327
scannerDefinitionFileHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1328
    "automatically generated by UIPainter ..."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1329
    "*** the code below creates a default model when invoked."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1330
    "*** (which may not be the one you wanted)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1331
    "*** Please change as required and accept it in the browser."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1332
    "*** (and replace this comment by something more useful ;-)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1333
    
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1334
    scannerDefinitionFileHolder isNil ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1335
        scannerDefinitionFileHolder := ValueHolder new.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1336
        
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1337
"/ if your app needs to be notified of changes, uncomment one of the lines below:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1338
"/       scannerFileHolder addDependent:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1339
"/       scannerFileHolder onChangeSend:#scannerFileHolderChanged to:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1340
    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1341
    ^ scannerDefinitionFileHolder.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1342
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1343
    "Created: / 11-05-2007 / 12:47:20 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1344
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1345
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1346
scannerHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1347
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1348
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1349
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1350
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1351
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1352
	^scannerHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1353
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1354
			[scannerHolder := String new asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1355
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1356
			[scannerHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1357
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1358
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1359
showSymbolSetHolder
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1360
        "This method was generated by UIDefiner.  Any edits made here
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1361
        may be lost whenever methods are automatically defined.  The
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1362
        initialization provided below may have been preempted by an
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1363
        initialize method."
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1364
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1365
        ^showSymbolSetHolder isNil
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1366
                ifTrue:
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1367
                        [showSymbolSetHolder := false asValue]
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1368
                ifFalse:
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1369
                        [showSymbolSetHolder]
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1370
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1371
    "Created: / 04-11-2008 / 06:57:26 / Jan Vrany <vranyj1@fel.cvut.cz>"
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1372
!
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1373
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1374
tabList
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1375
    "Generated by the TabListEditor"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1376
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1377
    |list|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1378
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1379
    (list := builder bindingAt:#tabList) isNil ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1380
        builder aspectAt:#tabList put:(list := self class tabList).
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1381
    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1382
    ^ list
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1383
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1384
    "Created: / 11-05-2007 / 10:12:06 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1385
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1386
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1387
tabSelectionHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1388
    "automatically generated by UIPainter ..."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1389
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1390
    "*** the code below creates a default model when invoked."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1391
    "*** (which may not be the one you wanted)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1392
    "*** Please change as required and accept it in the browser."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1393
    "*** (and replace this comment by something more useful ;-)"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1394
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1395
    tabSelectionHolder isNil ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1396
        tabSelectionHolder := ValueHolder new.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1397
"/ if your app needs to be notified of changes, uncomment one of the lines below:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1398
"/       tabSelectionHolder addDependent:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1399
"/       tabSelectionHolder onChangeSend:#tabSelectionHolderChanged to:self.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1400
    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1401
    ^ tabSelectionHolder.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1402
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1403
    "Created: / 31-10-2007 / 08:08:31 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1404
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1405
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1406
testHolder
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1407
	"This method was generated by UIDefiner.  Any edits made here
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1408
	may be lost whenever methods are automatically defined.  The
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1409
	initialization provided below may have been preempted by an
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1410
	initialize method."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1411
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1412
	^testHolder isNil
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1413
		ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1414
			[testHolder := String new asValue]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1415
		ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1416
			[testHolder]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1417
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1418
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1419
!SmaCCParserGenerator methodsFor:'hooks'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1420
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1421
postBuildParserDefinitionView: aView
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1422
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1423
    parserEditTextView := aView scrolledView
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1424
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1425
    "Created: / 11-05-2007 / 12:32:11 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1426
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1427
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1428
postBuildScannerDefinitionView: aView
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1429
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1430
    scannerEditTextView := aView scrolledView
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1431
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1432
    "Created: / 11-05-2007 / 12:32:26 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1433
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1434
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1435
!SmaCCParserGenerator methodsFor:'initialize-release'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1436
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1437
initialize
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1438
        super initialize.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1439
"        (self tabList)
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1440
                list: #('Scanner' 'Parser' 'Compile' 'Test') asList;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1441
                selectionIndex: 3.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1442
        self tabList selectionIndexHolder onChangeSend: #changedTab to: self."
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1443
        self scannerClassNameHolder value: ''.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1444
        self parserClassNameHolder value: ''.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1445
        self scannerHolder value: ''.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1446
        self parserHolder value: ''.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1447
        self testHolder value: ''.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1448
        self generateDefinitionCommentsHolder value: true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1449
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1450
    "Modified: / 11-05-2007 / 10:11:09 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1451
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1452
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1453
!SmaCCParserGenerator methodsFor:'interface opening'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1454
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1455
_postBuildWith: aBuilder 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1456
        "builder == aBuilder ifFalse: [subcanvasBuilder := aBuilder].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1457
        (aBuilder componentAt: #text) 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1458
                ifNotNil: [:each | each widget controller continuousAccept: true].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1459
        super postBuildWith: aBuilder"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1460
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1461
    "Created: / 11-05-2007 / 10:08:48 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1462
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1463
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1464
_postOpenWith: aBuilder 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1465
        "super postOpenWith: aBuilder.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1466
        compileWindowSpec"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1467
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1468
    "Created: / 11-05-2007 / 10:08:54 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1469
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1470
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1471
!SmaCCParserGenerator methodsFor:'private'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1472
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1473
acceptDefinitions
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1474
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1475
    scannerEditTextView accept.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1476
    parserEditTextView accept.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1477
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1478
    "Created: / 11-05-2007 / 12:34:48 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1479
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1480
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1481
choose: title from: collection
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1482
    ^Dialog
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1483
                choose:title 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1484
                fromList:collection 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1485
                lines:collection size
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1486
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1487
    "Created: / 11-05-2007 / 10:31:04 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1488
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1489
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1490
compile:aSymbol 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1491
    |grammar stream oldIgnoreCase oldCharacterSize parserCompiler showItemSets |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1492
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1493
    self acceptDefinitions.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1494
    (self scannerClassName isEmpty or:[ self parserClassName isEmpty ]) ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1495
        ^ self warn:'Both classes are not specified'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1496
    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1497
    self 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1498
        withWaitCursorDo:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1499
            self verifySyntax ifFalse:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1500
                ^ self
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1501
            ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1502
            oldIgnoreCase := SmaCCGrammar ignoreCase.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1503
            oldCharacterSize := SmaCCGrammar maximumCharacterValue.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1504
            [
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1505
                SmaCCGrammar
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1506
                    ignoreCase:self ignoreCaseHolder value;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1507
                    maximumCharacterValue:(self allowUnicodeHolder value 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1508
                                ifTrue:[ (2 raisedTo:16) - 1 ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1509
                                ifFalse:[ 255 ]).
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1510
                parserCompiler := SmaCCGrammarCompiler new.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1511
                parserCompiler
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1512
                    buildScanner:self scannerDefinition andParser:self parserDefinition;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1513
                    scannerClass:self scannerClassName;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1514
                    parserClass:self parserClassName.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1515
                grammar := parserCompiler grammar.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1516
                grammar type:aSymbol.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1517
                stream := WriteStream on:Text new.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1518
                showItemSets := false.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1519
                [
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1520
                    parserCompiler createChanges.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1521
                    self generateDefinitionCommentsHolder value ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1522
                        parserCompiler compileDefinitionComments
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1523
                    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1524
                    self generateSymbolCommentsHolder value ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1525
                        parserCompiler compileSymbolComment
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1526
                    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1527
                    self generateItemSetCommentsHolder value ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1528
                        parserCompiler compileItemSetsComment
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1529
                    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1530
                    parserCompiler compileChanges
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1531
                ] on:SmaCCCompilationNotification
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1532
                        do:[:ex | 
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1533
                    showItemSets := self showSymbolSetHolder value.
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1534
                    (ShowPrecedenceConflicts or:[ ('*precedence*' match:ex messageText) not ]) ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1535
                        stream
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1536
                            nextPutAll:'-------------------------\' withCRs asText 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1537
                                        , ex messageText asText allBold;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1538
                            cr;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1539
                            cr;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1540
                            nextPutAll:ex parameter;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1541
                            cr
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1542
                    ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1543
                    ex pass
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1544
                ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1545
                showItemSets ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1546
                    stream cr; nextPutAll:'Item sets' asText allBold; cr; cr.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1547
                    parserCompiler itemSets keysAndValuesDo:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1548
                        [:itemSetNumber :itemSet|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1549
                        itemSet id: itemSetNumber.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1550
                        "/stream nextPutAll: itemSetNumber printString asText allBold.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1551
                        stream nextPut:$:.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1552
                        stream cr.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1553
                        itemSet printOn: stream.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1554
                        stream cr; cr].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1555
                ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1556
                self conflictHolder value:stream contents.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1557
            ] ensure:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1558
                SmaCCGrammar
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1559
                    ignoreCase:oldIgnoreCase;
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1560
                    maximumCharacterValue:oldCharacterSize
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1561
            ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1562
        ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1563
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1564
    "Modified: / 14-02-2008 / 13:30:27 / janfrog"
5
79cd4e3c7011 Added option "Show item sets".
vranyj1
parents: 1
diff changeset
  1565
    "Modified: / 04-11-2008 / 07:00:23 / Jan Vrany <vranyj1@fel.cvut.cz>"
1
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1566
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1567
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1568
defaultDefinitionFileDirectory
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1569
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1570
    ^Filename homeDirectory
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1571
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1572
    "Created: / 11-05-2007 / 13:02:14 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1573
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1574
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1575
displayError: aString at: position 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1576
        |w|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1577
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1578
        w := self textWidget.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1579
        w notNil ifTrue:[ 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1580
                        w takeKeyboardFocus.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1581
                        w widget controller insertAndSelect: aString , ' ->' at: position]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1582
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1583
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1584
guessDefinitionFileDirectory
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1585
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1586
    | defDir |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1587
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1588
    self scannerClass 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1589
        ifNil:[^self defaultDefinitionFileDirectory].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1590
    self parserClass 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1591
        ifNil:[^self defaultDefinitionFileDirectory].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1592
    self scannerClass package ~= self parserClass package 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1593
        ifTrue:[^self defaultDefinitionFileDirectory].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1594
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1595
    defDir := Smalltalk getPackageDirectoryForPackage: self scannerClass package.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1596
    defDir ifNil:[^self defaultDefinitionFileDirectory].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1597
    (defDir construct:'resources') exists 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1598
        ifTrue:[defDir := defDir construct:'resources'].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1599
    (defDir construct:'grammar') exists 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1600
        ifTrue:[defDir := defDir construct:'grammar'].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1601
    ^defDir
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1602
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1603
    "Created: / 11-05-2007 / 13:01:47 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1604
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1605
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1606
guessParserDefinitionFilename 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1607
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1608
    ^'scanner.txt'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1609
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1610
    "Created: / 11-05-2007 / 13:16:34 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1611
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1612
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1613
guessScannerDefinitionFilename 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1614
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1615
    ^'scanner.txt'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1616
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1617
    "Created: / 11-05-2007 / 13:16:28 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1618
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1619
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1620
parseAndEvaluate: aBlock 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1621
	| class |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1622
	class := self parserClass.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1623
	class isNil ifTrue: [^self warn: 'No parser defined'].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1624
	aBlock value: (class parse: self testHolder value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1625
				onError: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1626
					[:aString :position | 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1627
					self tabList selection: 'Test'.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1628
					self displayError: aString at: position.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1629
					^self])
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1630
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1631
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1632
removeCommentedPartOf: aString 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1633
	| inStream outStream |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1634
	inStream := ReadStream on: aString.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1635
	outStream := WriteStream on: String new.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1636
	inStream upTo: $".
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1637
	[inStream atEnd] whileFalse: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1638
			[(inStream peekFor: $") ifTrue: [outStream nextPut: $"].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1639
			outStream nextPutAll: (inStream upTo: $")].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1640
	^outStream contents
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1641
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1642
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1643
selectedSpec
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1644
	^(self tabList selection asLowercase , 'WindowSpec') asSymbol
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1645
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1646
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1647
syntaxError: aString inFile:file at:position
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1648
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1649
    | fileContents skipped lineNo|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1650
    fileContents := file asFilename contents.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1651
    skipped := 0.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1652
    lineNo := 1.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1653
    fileContents do:[:line|
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1654
        skipped := skipped + line size + 1.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1655
        (skipped > position) ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1656
            [^Dialog warn:'Syntax error: ',aString, Character cr, ' in ',file,' at line #',lineNo printString].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1657
        lineNo := lineNo + 1.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1658
    ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1659
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1660
    "Created: / 09-04-2006 / 18:13:26 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1661
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1662
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1663
verifyParser
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1664
    ^ [
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1665
        SmaCCGrammarCompiler new buildScanner:self scannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1666
            andParser:self parserDefinition.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1667
        true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1668
    ] on:SmaCCParserError
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1669
            do:[:ex | 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1670
        self loadScannerAndParserFromFileHolder value ifTrue:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1671
            self 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1672
                syntaxError:ex description
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1673
                inFile:self parserDefinitionFileHolder value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1674
                at:ex parameter position
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1675
        ] ifFalse:[
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1676
            self tabList selection:'Parser'.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1677
            self displayError:ex description at:ex parameter position
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1678
        ].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1679
        ex return:false
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1680
    ]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1681
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1682
    "Modified: / 11-05-2007 / 12:47:09 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1683
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1684
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1685
verifyScanner
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1686
        SmaCCScannerParser parse: self scannerDefinition
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1687
                onError: 
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1688
                        [:aString :position |
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1689
                        self loadScannerAndParserFromFileHolder value
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1690
                            ifTrue:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1691
                                [self syntaxError:aString inFile:scannerDefinitionFileHolder value at:position]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1692
                            ifFalse:
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1693
                                [self tabSelectionToScannerDefinition.
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1694
                                self displayError: aString at: position].                            
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1695
                        ^false].
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1696
        ^true
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1697
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1698
    "Modified: / 14-02-2008 / 11:31:24 / janfrog"
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1699
!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1700
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1701
verifySyntax
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1702
	^self verifyScanner and: [self verifyParser]
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1703
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1704
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1705
!SmaCCParserGenerator class methodsFor:'documentation'!
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1706
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1707
version
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1708
    ^ '$Header: /opt/data/cvs/stx/goodies/smaCC/SmaCC__SmaCCParserGenerator.st,v 1.10 2008-02-17 10:30:09 vranyj1 Exp $'
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1709
! !
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1710
b8cca2663544 Initial import
vranyj1
parents:
diff changeset
  1711
SmaCCParserGenerator initialize!