HTMLBrowser.st
author Claus Gittinger <cg@exept.de>
Wed, 25 Feb 1998 23:57:53 +0100
changeset 682 9fcd010d8fd3
parent 639 e4aa6372b13b
permissions -rw-r--r--
terminate monitor process on unwind
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
639
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     1
ToolApplicationModel subclass:#HTMLBrowser
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     2
	instanceVariableNames:''
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     3
	classVariableNames:''
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     4
	poolDictionaries:''
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     5
	category:'Interface-Browsers'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     6
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     7
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     8
HTMLBrowser class instanceVariableNames:'lastFileName'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
     9
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    10
"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    11
 The following class instance variables are inherited by this class:
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    12
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    13
	ToolApplicationModel - history clipboard showHelp
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    14
	ApplicationModel - ClassResources
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    15
	Model - 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    16
	Object - 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    17
"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    18
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    19
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    20
!HTMLBrowser class methodsFor:'documentation'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    21
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    22
documentation
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    23
"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    24
    The future HTML Browser.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    25
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    26
    [author:]
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    27
         Thomas Zwick, eXept Software AG
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    28
"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    29
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    30
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    31
!HTMLBrowser class methodsFor:'accessing'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    32
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    33
lastFileName
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    34
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    35
    ^lastFileName
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    36
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    37
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    38
lastFileName: aFileName
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    39
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    40
    ^lastFileName := aFileName
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    41
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    42
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    43
!HTMLBrowser class methodsFor:'history'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    44
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    45
historyMaxSize
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    46
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    47
    ^25
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    48
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    49
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    50
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    51
!HTMLBrowser class methodsFor:'interface specs'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    52
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    53
windowSpec
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    54
    "this window spec was automatically generated by the ST/X UIPainter"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    55
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    56
    "do not manually edit this - the painter/builder may not be able to
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    57
     handle the specification if its corrupted."
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    58
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    59
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    60
     UIPainter new openOnClass:HTMLBrowser andSelector:#windowSpec
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    61
     HTMLBrowser new openInterface:#windowSpec
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    62
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    63
    "HTMLBrowser open"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    64
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    65
    <resource: #canvas>
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    66
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    67
    ^
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    68
     
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    69
       #(#FullSpec
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    70
          #'window:' 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    71
           #(#WindowSpec
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    72
              #'name:' 'HTML Browser'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    73
              #'layout:' #(#LayoutFrame 385 0 376 0 684 0 675 0)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    74
              #'label:' 'HTML Browser'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    75
              #'min:' #(#Point 10 10)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    76
              #'max:' #(#Point 1152 864)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    77
              #'bounds:' #(#Rectangle 385 376 685 676)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    78
              #'menu:' #menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    79
              #'usePreferredExtent:' false
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    80
          )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    81
          #'component:' 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    82
           #(#SpecCollection
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    83
              #'collection:' 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    84
               #(
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    85
                 #(#MenuPanelSpec
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    86
                    #'name:' 'menuToolbarView'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    87
                    #'layout:' #(#LayoutFrame 0 0.0 0 0 0 1.0 32 0)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    88
                    #'menu:' #menuToolbar
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    89
                    #'showSeparatingLines:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    90
                )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    91
                 #(#HTMLViewSpec
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    92
                    #'name:' 'htmlView'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    93
                    #'layout:' #(#LayoutFrame 0 0.0 34 0.0 0 1.0 -26 1.0)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    94
                    #'model:' #valueOfHTMLDocument
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    95
                    #'hasHorizontalScrollBar:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    96
                    #'hasVerticalScrollBar:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    97
                )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    98
                 #(#UISubSpecification
e4aa6372b13b initial checkin
tz
parents:
diff changeset
    99
                    #'name:' 'uISubSpecification1'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   100
                    #'layout:' #(#LayoutFrame 0 0.0 -24 1 0 1.0 0 1.0)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   101
                    #'majorKey:' #ToolApplicationModel
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   102
                    #'minorKey:' #windowSpecForInfoBarWithClock
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   103
                )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   104
              )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   105
          )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   106
      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   107
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   108
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   109
!HTMLBrowser class methodsFor:'menu specs'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   110
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   111
menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   112
    "this window spec was automatically generated by the ST/X MenuEditor"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   113
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   114
    "do not manually edit this - the builder may not be able to
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   115
     handle the specification if its corrupted."
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   116
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   117
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   118
     MenuEditor new openOnClass:HTMLBrowser andSelector:#menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   119
     (Menu new fromLiteralArrayEncoding:(HTMLBrowser menu)) startUp
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   120
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   121
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   122
    <resource: #menu>
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   123
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   124
    ^
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   125
     
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   126
       #(#Menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   127
          
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   128
           #(
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   129
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   130
                #'label:' 'About'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   131
                #'activeHelpKey:' #about
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   132
                #'accessCharacterPosition:' 1
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   133
                #'labelImage:' #(#ResourceRetriever nil #menuIcon)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   134
                #'submenuChannel:' #menuAbout
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   135
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   136
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   137
                #'label:' 'File'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   138
                #'translateLabel:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   139
                #'activeHelpKey:' #file
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   140
                #'submenu:' 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   141
                 #(#Menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   142
                    
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   143
                     #(
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   144
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   145
                          #'label:' 'Load...'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   146
                          #'translateLabel:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   147
                          #'value:' #doLoad
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   148
                          #'activeHelpKey:' #fileLoad
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   149
                          #'enabled:' #isStandAlone
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   150
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   151
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   152
                          #'label:' '-'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   153
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   154
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   155
                          #'label:' 'Print'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   156
                          #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   157
                          #'argument:' #'menu_print'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   158
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   159
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   160
                          #'label:' '-'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   161
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   162
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   163
                          #'label:' 'Exit'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   164
                          #'translateLabel:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   165
                          #'value:' #closeRequest
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   166
                          #'activeHelpKey:' #fileExit
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   167
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   168
                    ) nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   169
                    nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   170
                )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   171
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   172
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   173
                #'label:' 'Navigate'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   174
                #'submenuChannel:' #menuNavigate
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   175
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   176
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   177
                #'label:' 'Misc'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   178
                #'submenu:' 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   179
                 #(#Menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   180
                    
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   181
                     #(
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   182
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   183
                          #'label:' 'Source...'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   184
                          #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   185
                          #'argument:' #'menu_source'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   186
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   187
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   188
                          #'label:' '-'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   189
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   190
                       #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   191
                          #'label:' 'Settings...'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   192
                          #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   193
                          #'argument:' #'menu_settings'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   194
                      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   195
                    ) nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   196
                    nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   197
                )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   198
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   199
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   200
                #'label:' 'History'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   201
                #'activeHelpKey:' #history
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   202
                #'submenuChannel:' #menuHistory
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   203
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   204
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   205
                #'label:' 'Help'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   206
                #'startGroup:' #right
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   207
                #'activeHelpKey:' #help
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   208
                #'submenuChannel:' #menuHelp
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   209
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   210
          ) nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   211
          nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   212
      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   213
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   214
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   215
menuNavigate
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   216
    "this window spec was automatically generated by the ST/X MenuEditor"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   217
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   218
    "do not manually edit this - the builder may not be able to
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   219
     handle the specification if its corrupted."
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   220
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   221
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   222
     MenuEditor new openOnClass:HTMLBrowser andSelector:#menuNavigate
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   223
     (Menu new fromLiteralArrayEncoding:(HTMLBrowser menuNavigate)) startUp
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   224
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   225
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   226
    <resource: #menu>
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   227
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   228
    ^
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   229
     
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   230
       #(#Menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   231
          
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   232
           #(
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   233
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   234
                #'label:' 'Next'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   235
                #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   236
                #'enabled:' #valueOfCanNavigateToNext
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   237
                #'argument:' '1'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   238
                #'labelImage:' #(#ResourceRetriever nil #rightIcon 'Next')
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   239
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   240
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   241
                #'label:' 'Previous'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   242
                #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   243
                #'enabled:' #valueOfCanNavigateToPrevious
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   244
                #'argument:' '-1'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   245
                #'labelImage:' #(#ResourceRetriever nil #leftIcon 'Previous')
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   246
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   247
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   248
                #'label:' '-'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   249
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   250
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   251
                #'label:' 'Home'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   252
                #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   253
                #'argument:' #'menu_home'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   254
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   255
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   256
                #'label:' 'Back'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   257
                #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   258
                #'argument:' #'menu_back'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   259
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   260
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   261
                #'label:' 'Reload'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   262
                #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   263
                #'argument:' #'menu_reload'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   264
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   265
          ) nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   266
          nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   267
      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   268
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   269
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   270
menuToolbar
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   271
    "this window spec was automatically generated by the ST/X MenuEditor"
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   272
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   273
    "do not manually edit this - the builder may not be able to
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   274
     handle the specification if its corrupted."
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   275
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   276
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   277
     MenuEditor new openOnClass:HTMLBrowser andSelector:#menuToolbar
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   278
     (Menu new fromLiteralArrayEncoding:(HTMLBrowser menuToolbar)) startUp
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   279
    "
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   280
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   281
    <resource: #menu>
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   282
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   283
    ^
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   284
     
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   285
       #(#Menu
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   286
          
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   287
           #(
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   288
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   289
                #'label:' 'Load'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   290
                #'isButton:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   291
                #'value:' #doLoad
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   292
                #'labelImage:' #(#ResourceRetriever nil #loadIcon)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   293
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   294
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   295
                #'label:' ''
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   296
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   297
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   298
                #'label:' 'Next'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   299
                #'isButton:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   300
                #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   301
                #'enabled:' #valueOfCanNavigateToNext
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   302
                #'argument:' '1'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   303
                #'labelImage:' #(#ResourceRetriever nil #rightIcon)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   304
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   305
             #(#MenuItem
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   306
                #'label:' 'Previous'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   307
                #'isButton:' true
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   308
                #'value:' #'doPerform:'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   309
                #'enabled:' #valueOfCanNavigateToPrevious
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   310
                #'argument:' '-1'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   311
                #'labelImage:' #(#ResourceRetriever nil #leftIcon)
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   312
            )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   313
          ) nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   314
          nil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   315
      )
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   316
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   317
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   318
!HTMLBrowser methodsFor:'accessing - views'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   319
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   320
htmlViewDoc
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   321
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   322
    ^(builder componentAt: #htmlView) scrolledView
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   323
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   324
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   325
!HTMLBrowser methodsFor:'aspects'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   326
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   327
valueOfCanNavigateToNext
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   328
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   329
    |holder|
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   330
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   331
    (holder := builder bindingAt:#valueOfCanNavigateToNext) isNil ifTrue:[
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   332
        builder aspectAt:#valueOfCanNavigateToNext put:(holder :=  false asValue).
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   333
    ].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   334
    ^ holder
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   335
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   336
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   337
valueOfCanNavigateToPrevious
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   338
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   339
    |holder|
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   340
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   341
    (holder := builder bindingAt:#valueOfCanNavigateToPrevious) isNil ifTrue:[
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   342
        builder aspectAt:#valueOfCanNavigateToPrevious put:(holder :=  false asValue).
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   343
    ].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   344
    ^ holder
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   345
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   346
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   347
valueOfHTMLDocument
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   348
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   349
    |holder|
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   350
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   351
    (holder := builder bindingAt:#valueOfHTMLDocument) isNil ifTrue:[
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   352
        builder aspectAt:#valueOfHTMLDocument put:(holder :=  ValueHolder new).
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   353
    ].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   354
    ^ holder
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   355
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   356
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   357
!HTMLBrowser methodsFor:'help'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   358
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   359
openTutorial
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   360
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   361
    self doPerform: #menu_help
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   362
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   363
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   364
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   365
!HTMLBrowser methodsFor:'startup / release'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   366
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   367
postOpenWith:aBuilder
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   368
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   369
    self loadFromFile: self class lastFileName.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   370
    self htmlViewDoc history addAll: self historyEntries.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   371
    self updateChannels.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   372
    super postOpenWith:aBuilder.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   373
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   374
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   375
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   376
!HTMLBrowser methodsFor:'user actions'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   377
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   378
doLoad
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   379
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   380
    self loadFromFile: 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   381
        (FileSelectionBrowser request: 'Load a HTML File' fileFilters: #('.htm' '*.html'))
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   382
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   383
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   384
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   385
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   386
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   387
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   388
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   389
doPerform: what
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   390
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   391
    (self htmlViewDoc respondsTo: what)     
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   392
    ifTrue:
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   393
    [
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   394
        self htmlViewDoc perform: what.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   395
        self valueOfHTMLDocument value: self htmlViewDoc currentURL.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   396
        self class lastFileName: self htmlViewDoc currentURL
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   397
    ]
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   398
    ifFalse:
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   399
    [
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   400
        self valueOfHTMLDocument value: 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   401
            (self class lastFileName: (self htmlViewDoc history at: 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   402
                (self htmlViewDoc history indexOf: self valueOfHTMLDocument value) + what asInteger ifAbsent: [self class lastFileName])).
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   403
    ].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   404
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   405
    self updateChannels
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   406
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   407
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   408
loadFromFile: aFileName
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   409
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   410
    self valueOfHTMLDocument value: aFileName.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   411
    aFileName notNil 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   412
    ifTrue: 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   413
    [
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   414
        self class lastFileName: aFileName
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   415
    ].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   416
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   417
    self updateChannels
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   418
!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   419
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   420
updateChannels
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   421
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   422
    |htmlViewDoc|
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   423
    htmlViewDoc := self htmlViewDoc.
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   424
    (htmlViewDoc history at: 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   425
    (htmlViewDoc history indexOf: self valueOfHTMLDocument value) + 1 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   426
    ifAbsent: nil) isNil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   427
        ifTrue: [self valueOfCanNavigateToNext value: false]
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   428
        ifFalse: [self valueOfCanNavigateToNext value: true].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   429
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   430
    (htmlViewDoc history at: 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   431
    (htmlViewDoc history indexOf: self valueOfHTMLDocument value) - 1 
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   432
    ifAbsent: nil) isNil
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   433
        ifTrue: [self valueOfCanNavigateToPrevious value: false]
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   434
        ifFalse: [self valueOfCanNavigateToPrevious value: true].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   435
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   436
    "self emptyHistory."
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   437
    htmlViewDoc history do: [:url| self addToHistory: url -> #loadFromFile:].
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   438
! !
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   439
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   440
!HTMLBrowser class methodsFor:'documentation'!
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   441
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   442
version
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   443
    ^ '$Header$'
e4aa6372b13b initial checkin
tz
parents:
diff changeset
   444
! !