MultiViewToolApplication.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 14 Jun 2018 22:19:39 +0100
branchjv
changeset 18227 d25a407ba86d
parent 17219 46a5890e4c57
child 18273 c46e9ab3000c
permissions -rw-r--r--
Mini testrunner: show "green" if there's at least one pass and rest is pass or skip This is more meaningfull result then showing "gray" if there's at least one skip.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6179
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     1
"
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     2
 COPYRIGHT (c) 2004 by eXept Software AG
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     3
              All Rights Reserved
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     4
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     5
 This software is furnished under a license and may be used
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     6
 only in accordance with the terms of that license and with the
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     8
 be provided or otherwise made available to, or used by, any
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
     9
 other person.  No title to or ownership of the software is
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    10
 hereby transferred.
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    11
"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
15407
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
    14
"{ NameSpace: Smalltalk }"
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
    15
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
ToolApplicationModel subclass:#MultiViewToolApplication
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
	instanceVariableNames:'workspaces tabList selectedWorkspaceIndexHolder workspaceHolder'
8615
3407696ae28f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8576
diff changeset
    18
	classVariableNames:'DefaultInfoVisible DefaultEditToolBarVisible
3407696ae28f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8576
diff changeset
    19
		DefaultToolBarVisible'
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	poolDictionaries:''
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
	category:'Interface-Smalltalk'
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
!MultiViewToolApplication class methodsFor:'documentation'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
6179
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    26
copyright
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    27
"
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    28
 COPYRIGHT (c) 2004 by eXept Software AG
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    29
              All Rights Reserved
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    30
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    31
 This software is furnished under a license and may be used
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    32
 only in accordance with the terms of that license and with the
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    33
 inclusion of the above copyright notice.   This software may not
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    34
 be provided or otherwise made available to, or used by, any
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    35
 other person.  No title to or ownership of the software is
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    36
 hereby transferred.
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    37
"
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    38
!
182d948dcf05 copyright
Claus Gittinger <cg@exept.de>
parents: 5303
diff changeset
    39
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
documentation
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
"
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
    42
    Common code for multiView applications (Workspace, Terminal app and maybe more later)
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
    [author:]
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
        Claus Gittinger
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
"
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    49
!MultiViewToolApplication class methodsFor:'defaults'!
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    50
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
    51
defaultEditToolbarVisible
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
    52
    ^ DefaultEditToolBarVisible ? false
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
    53
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
    54
    "Created: / 14-07-2007 / 16:38:47 / cg"
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
    55
!
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
    56
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    57
defaultInfoVisible
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    58
    ^ DefaultInfoVisible ? true
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    59
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    60
    "Created: / 14-07-2007 / 16:38:32 / cg"
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    61
!
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    62
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    63
defaultToolbarVisible
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    64
    ^ DefaultToolBarVisible ? false
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    65
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    66
    "Created: / 14-07-2007 / 16:38:47 / cg"
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    67
! !
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
    68
9143
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    69
!MultiViewToolApplication class methodsFor:'help specs'!
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    70
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    71
flyByHelpSpec
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    72
    <resource: #help>
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    73
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    74
    ^ super flyByHelpSpec addPairsFrom:#(
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    75
10221
f3fcf030f6b4 useless code removed
Claus Gittinger <cg@exept.de>
parents: 9694
diff changeset
    76
#addWorkspace
f3fcf030f6b4 useless code removed
Claus Gittinger <cg@exept.de>
parents: 9694
diff changeset
    77
'Add another page (tab)'
f3fcf030f6b4 useless code removed
Claus Gittinger <cg@exept.de>
parents: 9694
diff changeset
    78
9143
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    79
#hideToolBar
12482
e801a369d243 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 11727
diff changeset
    80
'Hide the toolbar. Show again via the "View"-menu'
9143
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    81
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    82
#hideEditToolBar
12482
e801a369d243 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 11727
diff changeset
    83
'Hide the edit-toolbar. Show again via the "View"-menu'
9143
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    84
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    85
)
10221
f3fcf030f6b4 useless code removed
Claus Gittinger <cg@exept.de>
parents: 9694
diff changeset
    86
f3fcf030f6b4 useless code removed
Claus Gittinger <cg@exept.de>
parents: 9694
diff changeset
    87
    "Modified: / 06-07-2011 / 18:08:57 / cg"
9143
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    88
! !
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
    89
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    90
!MultiViewToolApplication class methodsFor:'image specs'!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    91
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    92
hideToolBarIcon
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    93
    <resource: #programImage>
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    94
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    95
    ^ ToolbarIconLibrary hideToolBarIcon
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    96
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    97
    "Created: / 18-02-2007 / 14:53:38 / cg"
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    98
! !
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
    99
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
!MultiViewToolApplication class methodsFor:'interface specs'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
windowSpec
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   103
    "This resource specification was automatically generated
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   104
     by the UIPainter of ST/X."
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   105
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   106
    "Do not manually edit this!! If it is corrupted,
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   107
     the UIPainter may not be able to read the specification."
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   108
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   109
    "
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   110
     UIPainter new openOnClass:MultiViewToolApplication andSelector:#windowSpec
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   111
     MultiViewToolApplication new openInterface:#windowSpec
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   112
     MultiViewToolApplication open
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   113
    "
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   114
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   115
    <resource: #canvas>
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   117
    ^ 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   118
     #(FullSpec
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   119
        name: windowSpec
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   120
        window: 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   121
       (WindowSpec
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   122
          label: 'Workspace'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   123
          name: 'Workspace'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   124
          min: (Point 10 10)
13858
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   125
          bounds: (Rectangle 0 0 640 480)
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   126
          menu: mainMenu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   127
        )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   128
        component: 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   129
       (SpecCollection
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   130
          collection: (
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   131
           (ViewSpec
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   132
              name: 'ToolBar'
8231
50ce5026cb72 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8196
diff changeset
   133
              layout: (LayoutFrame 0 0 0 0 0 1 32 0)
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   134
              visibilityChannel: toolBarVisibleHolder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   135
              component: 
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   136
             (SpecCollection
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   137
                collection: (
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   138
                 (ActionButtonSpec
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   139
                    label: 'hideToolBarIcon'
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   140
                    name: 'HideToolBarButton'
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   141
                    layout: (LayoutFrame 0 0 0 0 13 0 0 1)
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   142
                    activeHelpKey: hideToolBar
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   143
                    hasCharacterOrientedLabel: false
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   144
                    translateLabel: true
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   145
                    model: hideToolbar
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   146
                    postBuildCallback: hideToolBarButtonCreated:
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   147
                  )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   148
                 (MenuPanelSpec
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   149
                    name: 'ToolBarMenu'
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   150
                    layout: (LayoutFrame 13 0.0 0 0.0 0 1.0 0 1.0)
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   151
                    visibilityChannel: toolBarVisibleHolder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   152
                    menu: toolBarMenu
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   153
                    textDefault: true
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   154
                  )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   155
                 )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   156
               
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   157
              )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   158
            )
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   159
           (ViewSpec
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   160
              name: 'EditToolBar'
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   161
              layout: (LayoutFrame 0 0 32 0 0 1 64 0)
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   162
              visibilityChannel: editToolBarVisibleHolder
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   163
              component: 
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   164
             (SpecCollection
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   165
                collection: (
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   166
                 (ActionButtonSpec
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   167
                    label: 'hideToolBarIcon'
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   168
                    name: 'HideEditToolBarButton'
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   169
                    layout: (LayoutFrame 0 0 0 0 13 0 0 1)
9143
Claus Gittinger <cg@exept.de>
parents: 9058
diff changeset
   170
                    activeHelpKey: hideEditToolBar
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   171
                    hasCharacterOrientedLabel: false
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   172
                    translateLabel: true
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   173
                    model: hideEditToolbar
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   174
                    postBuildCallback: hideToolBarButtonCreated:
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   175
                  )
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   176
                 (MenuPanelSpec
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   177
                    name: 'EditToolBar1'
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   178
                    layout: (LayoutFrame 13 0.0 0 0.0 0 1.0 0 1.0)
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   179
                    visibilityChannel: editToolBarVisibleHolder
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   180
                    menu: editToolBarMenu
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   181
                    textDefault: true
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   182
                  )
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   183
                 )
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   184
               
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   185
              )
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   186
            )
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   187
           (NoteBookViewSpec
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   188
              name: 'NoteBook'
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   189
              layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   190
              model: selectedWorkspaceIndexHolder
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   191
              menu: tabList
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   192
              useIndex: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   193
              accessTabMenuAction: tabMenuAt:
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   194
              destroyTabAction: destroyTab:
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   195
              canvas: workspaceHolder
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   196
              canvasInset: 0
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   197
              keepCanvasAlive: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   198
              tabLevel: 1
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   199
            )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   200
           )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   201
         
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   202
        )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   203
      )
13858
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   204
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   205
    "Modified: / 11-05-2012 / 11:43:32 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
!MultiViewToolApplication class methodsFor:'menu specs'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   210
editToolBarMenu
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   211
    "This resource specification was automatically generated
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   212
     by the MenuEditor of ST/X."
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   213
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   214
    "Do not manually edit this!! If it is corrupted,
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   215
     the MenuEditor may not be able to read the specification."
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   216
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   217
    "
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   218
     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#toolBarMenu
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   219
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication toolBarMenu)) startUp
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   220
    "
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   221
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   222
    <resource: #menu>
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   223
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   224
    ^ 
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   225
     #(Menu
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   226
        (
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   227
         )
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   228
        nil
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   229
        nil
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   230
      )
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   231
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   232
    "Modified: / 18-02-2007 / 14:59:21 / cg"
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   233
!
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   234
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
mainMenu
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   236
    "This resource specification was automatically generated
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   237
     by the MenuEditor of ST/X."
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   238
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   239
    "Do not manually edit this!! If it is corrupted,
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   240
     the MenuEditor may not be able to read the specification."
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   241
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   242
    "
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   243
     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#mainMenu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   244
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication mainMenu)) startUp
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   245
    "
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   246
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   247
    <resource: #menu>
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   249
    ^ 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   250
     #(Menu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   251
        (
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   252
         (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   253
            label: 'File'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   254
            translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   255
            submenu: 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   256
           (Menu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   257
              (
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   258
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   259
                  label: 'New Editor'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   260
                  itemValue: newWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   261
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   262
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   263
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   264
                  label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   265
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   266
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   267
                  label: 'Load File...'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   268
                  itemValue: menuLoad
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   269
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   270
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   271
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   272
                  label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   273
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   274
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   275
                  label: 'Save As...'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   276
                  itemValue: menuSaveAs
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   277
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   278
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   279
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   280
                  enabled: hasMultipleBuffersHolder
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   281
                  label: 'Save all As...'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   282
                  itemValue: menuSaveAllAs
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   283
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   284
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   285
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   286
                  label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   287
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   288
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   289
                  label: 'Print...'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   290
                  itemValue: menuPrint
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   291
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   292
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   293
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   294
                  label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   295
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   296
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   297
                  label: 'Exit'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   298
                  itemValue: closeRequest
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   299
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   300
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   301
               )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   302
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   303
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   304
            )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   305
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   306
         (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   307
            label: 'Buffers'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   308
            nameKey: Buffer
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   309
            translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   310
            submenu: 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   311
           (Menu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   312
              (
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   313
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   314
                  label: 'Add Buffer'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   315
                  itemValue: addWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   316
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   317
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   318
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   319
                  label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   320
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   321
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   322
                  label: 'Rename...'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   323
                  itemValue: renameWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   324
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   325
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   326
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   327
                  label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   328
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   329
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   330
                  enabled: canRemoveWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   331
                  label: 'Remove Buffer'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   332
                  itemValue: removeWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   333
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   334
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   335
               )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   336
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   337
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   338
            )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   339
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   340
         (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   341
            label: 'Edit'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   342
            translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   343
            submenu: 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   344
           (Menu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   345
              (
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   346
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   347
                  enabled: hasSelectionInActiveWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   348
                  label: 'Cut'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   349
                  itemValue: cutSelection
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   350
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   351
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   352
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   353
                  enabled: hasSelectionInActiveWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   354
                  label: 'Copy'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   355
                  itemValue: copySelection
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   356
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   357
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   358
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   359
                  label: 'Paste'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   360
                  itemValue: paste
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   361
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   362
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   363
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   364
                  label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   365
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   366
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   367
                  label: 'Select All'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   368
                  itemValue: selectAll
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   369
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   370
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   371
               )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   372
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   373
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   374
            )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   375
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   376
         (MenuItem
8500
1a3066fb8ed7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8498
diff changeset
   377
            label: 'View'
1a3066fb8ed7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8498
diff changeset
   378
            translateLabel: true
1a3066fb8ed7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8498
diff changeset
   379
            submenuChannel: viewMenu
1a3066fb8ed7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8498
diff changeset
   380
            keepLinkedMenu: true
1a3066fb8ed7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8498
diff changeset
   381
          )
1a3066fb8ed7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8498
diff changeset
   382
         (MenuItem
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   383
            label: 'MENU_Help'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   384
            translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   385
            startGroup: conditionalRight
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   386
            submenu: 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   387
           (Menu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   388
              (
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   389
               (MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   390
                  label: 'About this Application...'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   391
                  itemValue: openAboutThisApplication
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   392
                  translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   393
                )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   394
               )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   395
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   396
              nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   397
            )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   398
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   399
         )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   400
        nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   401
        nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   402
      )
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
tabMenu
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   406
    "This resource specification was automatically generated
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   407
     by the MenuEditor of ST/X."
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   408
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   409
    "Do not manually edit this!! If it is corrupted,
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   410
     the MenuEditor may not be able to read the specification."
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   411
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   412
    "
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   413
     MenuEditor new openOnClass:WorkspaceApplication andSelector:#tabMenu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   414
     (Menu new fromLiteralArrayEncoding:(WorkspaceApplication tabMenu)) startUp
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   415
    "
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   416
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   417
    <resource: #menu>
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   419
    ^
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   420
     #(#Menu
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   421
        #(
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   422
         #(#MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   423
            #label: 'Add Tab'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   424
            #translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   425
            "/ #triggerOnDown: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   426
            #value: #addWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   427
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   428
         #(#MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   429
            #label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   430
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   431
         #(#MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   432
            #label: 'Remove Tab'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   433
            #translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   434
            "/ #triggerOnDown: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   435
            #value: #removeWorkspace:
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   436
            #enabled: #canRemoveWorkspace:
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   437
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   438
         #(#MenuItem
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   439
            #label: 'Remove all other Tabs'
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   440
            #translateLabel: true
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   441
            "/ #triggerOnDown: true
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   442
            #value: #removeAllWorkspacesExcept:
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   443
            #enabled: #canRemoveAllWorkspacesExcept:
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   444
          )
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   445
         #(#MenuItem
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   446
            #label: '-'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   447
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   448
         #(#MenuItem
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   449
            #label: 'Rename...'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   450
            #translateLabel: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   451
            "/ #triggerOnDown: true
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   452
            #value: #renameWorkspace:
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   453
          )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   454
         )
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   455
        nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   456
        nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   457
      )
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   458
!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   459
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   460
toolBarMenu
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   461
    "This resource specification was automatically generated
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   462
     by the MenuEditor of ST/X."
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   463
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   464
    "Do not manually edit this!! If it is corrupted,
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   465
     the MenuEditor may not be able to read the specification."
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   466
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   467
    "
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   468
     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#toolBarMenu
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   469
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication toolBarMenu)) startUp
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   470
    "
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   471
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   472
    <resource: #menu>
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   473
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   474
    ^ 
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   475
     #(Menu
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   476
        (
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   477
         (MenuItem
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   478
            label: ''
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   479
          )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   480
         (MenuItem
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   481
"/            activeHelpKey: addWorkspace
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   482
            label: 'Add Buffer'
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   483
            itemValue: addWorkspace
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   484
            translateLabel: true
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   485
            isButton: true
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   486
            labelImage: (ResourceRetriever ToolbarIconLibrary addBufferIcon)
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   487
          )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   488
         )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   489
        nil
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   490
        nil
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   491
      )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   492
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   493
    "Modified: / 18-02-2007 / 14:59:21 / cg"
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   494
!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   495
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   496
viewMenu
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   497
    "This resource specification was automatically generated
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   498
     by the MenuEditor of ST/X."
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   499
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   500
    "Do not manually edit this!! If it is corrupted,
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   501
     the MenuEditor may not be able to read the specification."
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   502
14279
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
   503
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   504
    "
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   505
     MenuEditor new openOnClass:MultiViewToolApplication andSelector:#viewMenu
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   506
     (Menu new fromLiteralArrayEncoding:(MultiViewToolApplication viewMenu)) startUp
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   507
    "
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   508
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   509
    <resource: #menu>
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   510
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   511
    ^ 
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   512
     #(Menu
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   513
        (
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   514
         (MenuItem
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   515
            label: 'Toolbar'
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   516
            hideMenuOnActivated: false
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   517
            indication: toolBarVisibleHolder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   518
          )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   519
         (MenuItem
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   520
            label: 'Editor Toolbar'
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   521
            isVisible: hasEditToolBar
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   522
            hideMenuOnActivated: false
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   523
            indication: editToolBarVisibleHolder
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   524
          )
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   525
         (MenuItem
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   526
            label: 'Info'
9380
346a2a59c410 added: #hasInfoLabel
Claus Gittinger <cg@exept.de>
parents: 9143
diff changeset
   527
            isVisible: hasInfoLabel
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   528
            hideMenuOnActivated: false
7653
71f20b5aab8d Do not refer to non-existant aspect
Stefan Vogel <sv@exept.de>
parents: 7650
diff changeset
   529
            indication: infoVisibleHolder
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   530
          )
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   531
         (MenuItem
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   532
            label: '-'
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   533
          )
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   534
         (MenuItem
14279
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
   535
            label: 'Font...'
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
   536
            itemValue: openFontDialog
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
   537
          )
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
   538
         (MenuItem
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   539
            label: 'Settings...'
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   540
            itemValue: openSettingsDialog
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
   541
          )
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   542
         )
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   543
        nil
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   544
        nil
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   545
      )
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   547
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
!MultiViewToolApplication class methodsFor:'queries'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
15945
06616f490bf6 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15408
diff changeset
   550
isAbstract
06616f490bf6 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15408
diff changeset
   551
    ^ self == MultiViewToolApplication
06616f490bf6 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15408
diff changeset
   552
!
06616f490bf6 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15408
diff changeset
   553
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   554
isVisualStartable
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   555
    "return true, if this application can be started via #open.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   556
     (to allow start of a change browser via double-click in the browser)"
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   557
5303
fe0d2165b716 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5302
diff changeset
   558
    self == MultiViewToolApplication ifTrue:[^false].
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   559
    ^ super isVisualStartable
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   560
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
!MultiViewToolApplication methodsFor:'accessing'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   564
selectedWorkspace
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
    |wsIndex|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
    workspaces isNil ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
        workspaces := OrderedCollection new.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
    wsIndex := self selectedWorkspaceIndexHolder value.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
    wsIndex == 0 ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   572
        ^ nil
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   574
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   575
    workspaces size < wsIndex ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   576
        workspaces grow:wsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   577
        workspaces at:wsIndex put:(self createWorkspace).
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   578
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
    ^ workspaces at:wsIndex
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
13858
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   582
selectedWorkspaceApplication
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   583
    "Return an aoplication of selected workspace or nil,
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   584
     is currently selected workspace is not an embedded
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   585
     ApplicationModel"
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   586
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   587
    | ws |
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   588
    ws := self selectedWorkspace.
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   589
    ^(ws notNil and:[ws isApplicationSubView]) ifTrue:[
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   590
        ws application
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   591
    ] ifFalse:[
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   592
        nil
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   593
    ]
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   594
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   595
    "Created: / 11-05-2012 / 09:38:25 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   596
!
2e691a1ec8b2 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 12482
diff changeset
   597
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
tabMenuAt:index
6244
548f6707f59c *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6179
diff changeset
   599
    <resource: #programMenu>
548f6707f59c *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 6179
diff changeset
   600
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
    |m i ws|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
    m := self class tabMenu.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   604
    m := m decodeAsLiteralArray.
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   605
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
    i := m detectItem:[:item | item value == #removeWorkspace:] ifNone:nil.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   607
    i notNil ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   608
        i argument:index.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   609
        index ~~ self selectedWorkspaceIndexHolder value ifTrue:[
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   610
            "/ for now: if that buffer is modified, do not allow removing.
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   611
            "/ (must be brought to front, in order for check-for-modification to work)
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
            ws := workspaces at:index.
11727
667a6bfb5c64 Avoid #isKindOf: where possible
Stefan Vogel <sv@exept.de>
parents: 11626
diff changeset
   613
            ws isScrollWrapper ifTrue:[
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   614
                ws := ws scrolledView
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
            ].
11727
667a6bfb5c64 Avoid #isKindOf: where possible
Stefan Vogel <sv@exept.de>
parents: 11626
diff changeset
   616
            (ws isTextView not
667a6bfb5c64 Avoid #isKindOf: where possible
Stefan Vogel <sv@exept.de>
parents: 11626
diff changeset
   617
             or:[ ws modified ]) ifTrue:[
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   618
                i disable
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   619
            ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   620
        ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
    ].
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   622
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   623
    i := m detectItem:[:item | item value == #removeAllWorkspacesExcept:] ifNone:nil.
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   624
    i notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   625
        i argument:index.
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   626
        "/ for now: if any buffer is modified, do not allow removing.
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   627
        "/ (must be brought to front, in order for check-for-modification to work)
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   628
        workspaces doWithIndex:[:wsArg :idx |
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   629
            |ws|
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   630
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   631
            idx ~~ index ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   632
                ws := wsArg.
11727
667a6bfb5c64 Avoid #isKindOf: where possible
Stefan Vogel <sv@exept.de>
parents: 11626
diff changeset
   633
                ws isScrollWrapper ifTrue:[
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   634
                    ws := ws scrolledView
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   635
                ].
11727
667a6bfb5c64 Avoid #isKindOf: where possible
Stefan Vogel <sv@exept.de>
parents: 11626
diff changeset
   636
                (ws isTextView and:[ ws modified ]) ifTrue:[
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   637
                    i disable
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   638
                ].
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   639
            ].
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   640
        ].
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   641
    ].
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   642
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   643
    i := m detectItem:[:item | item value == #renameWorkspace:] ifNone:nil.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   644
    i notNil ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   645
        i argument:index.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   646
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   648
    m findGuiResourcesIn:self.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   649
    ^ m
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   650
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   651
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   652
workspaceHolder
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   653
    workspaceHolder isNil ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   654
        workspaceHolder := ValueHolder with:(self selectedWorkspace).
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   655
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   656
    ^ workspaceHolder
7852
1cd1001247d9 *** empty log message ***
ab
parents: 7824
diff changeset
   657
!
1cd1001247d9 *** empty log message ***
ab
parents: 7824
diff changeset
   658
1cd1001247d9 *** empty log message ***
ab
parents: 7824
diff changeset
   659
workspaces
1cd1001247d9 *** empty log message ***
ab
parents: 7824
diff changeset
   660
    ^ workspaces
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   661
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   662
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   663
!MultiViewToolApplication methodsFor:'aspects'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   664
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   665
editToolBarVisibleHolder
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   666
    |holder|
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   667
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   668
    (holder := builder bindingAt:#editToolBarVisibleHolder) isNil ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   669
        holder := self class defaultEditToolbarVisible asValue.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   670
        builder aspectAt:#editToolBarVisibleHolder put: holder.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   671
        holder addDependent:self.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   672
    ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   673
    ^ holder
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   674
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   675
    "Created: / 18-02-2007 / 14:43:39 / cg"
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   676
    "Modified: / 14-07-2007 / 16:39:55 / cg"
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   677
!
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   678
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   679
hasEditToolBar
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   680
    ^ (self menuFor:#editToolBarMenu) decodeAsLiteralArray hasItems 
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   681
!
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   682
9380
346a2a59c410 added: #hasInfoLabel
Claus Gittinger <cg@exept.de>
parents: 9143
diff changeset
   683
hasInfoLabel
346a2a59c410 added: #hasInfoLabel
Claus Gittinger <cg@exept.de>
parents: 9143
diff changeset
   684
    ^ false
346a2a59c410 added: #hasInfoLabel
Claus Gittinger <cg@exept.de>
parents: 9143
diff changeset
   685
!
346a2a59c410 added: #hasInfoLabel
Claus Gittinger <cg@exept.de>
parents: 9143
diff changeset
   686
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   687
infoVisibleHolder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   688
    |holder|
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   689
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   690
    (holder := builder bindingAt:#infoVisibleHolder) isNil ifTrue:[
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   691
        holder := self class defaultInfoVisible asValue.
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   692
        builder aspectAt:#infoVisibleHolder put: holder.
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   693
        holder addDependent:self.
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   694
    ].
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   695
    ^ holder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   696
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   697
    "Created: / 18-02-2007 / 15:01:05 / cg"
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   698
    "Modified: / 14-07-2007 / 16:39:20 / cg"
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   699
!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   700
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   701
selectedWorkspaceIndexHolder
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   702
    selectedWorkspaceIndexHolder isNil ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   703
        selectedWorkspaceIndexHolder := 1 asValue.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   704
        selectedWorkspaceIndexHolder onChangeSend:#workspaceSelectionChanged to:self.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   705
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   706
    ^ selectedWorkspaceIndexHolder.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   707
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   708
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   709
tabList
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   710
    tabList isNil ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   711
        tabList := List new.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   712
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   713
    ^ tabList.
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   714
!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   715
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   716
toolBarVisibleHolder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   717
    |holder|
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   718
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   719
    (holder := builder bindingAt:#toolBarVisibleHolder) isNil ifTrue:[
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   720
        holder := self class defaultToolbarVisible asValue.
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   721
        builder aspectAt:#toolBarVisibleHolder put: holder.
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   722
        holder addDependent:self.
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   723
    ].
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   724
    ^ holder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   725
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   726
    "Created: / 18-02-2007 / 14:43:39 / cg"
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   727
    "Modified: / 14-07-2007 / 16:39:55 / cg"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   728
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   729
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   730
!MultiViewToolApplication methodsFor:'aspects-queries'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   731
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   732
canRemoveAllWorkspacesExcept:idx
15408
ff62d43d5a1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 15407
diff changeset
   733
    ^ [ self tabList size > 1 ]
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   734
!
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
   735
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   736
canRemoveWorkspace
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   737
    ^ self canRemoveWorkspace:(self selectedWorkspaceIndexHolder value)
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   738
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   739
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   740
canRemoveWorkspace:idx
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   741
    ^ self tabList size > 1
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   742
"/       and:[ (self workspacesTextViewAt:(self selectedWorkspaceIndexHolder value))
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   743
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   744
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   745
hasMultipleBuffersHolder
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   746
    ^ [ workspaces size > 1 ]
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   747
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   748
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   749
hasSelectionInActiveWorkspace
6424
57dbbc6ff912 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6408
diff changeset
   750
    |v|
57dbbc6ff912 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6408
diff changeset
   751
57dbbc6ff912 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6408
diff changeset
   752
    v := self selectedWorkspacesTextView.
57dbbc6ff912 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6408
diff changeset
   753
    ^ v notNil and:[v selectionAsString size > 0]
8528
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   754
!
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   755
17198
551129abfddb #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15945
diff changeset
   756
hasSelectionInActiveWorkspaceAndEditorIsNotReadonly
551129abfddb #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15945
diff changeset
   757
    |v|
551129abfddb #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15945
diff changeset
   758
551129abfddb #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15945
diff changeset
   759
    v := self selectedWorkspacesTextView.
551129abfddb #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15945
diff changeset
   760
    ^ v notNil and:[v enabled and:[v selectionAsString size > 0]]
551129abfddb #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15945
diff changeset
   761
!
551129abfddb #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 15945
diff changeset
   762
8528
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   763
hasTextInActiveWorkspace
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   764
    |v|
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   765
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   766
    v := self selectedWorkspacesTextView.
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   767
    ^ v notNil 
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   768
      and:[v list notEmptyOrNil 
cfb56a882e81 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8509
diff changeset
   769
      and:[v list contains:[:l | l notEmptyOrNil]]] 
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   770
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   771
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   772
!MultiViewToolApplication methodsFor:'change & update'!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   773
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   774
infoVisibilityChanged
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   775
    |visible cFrame bottomOffset|
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   776
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   777
    visible := self infoVisibleHolder value.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   778
9380
346a2a59c410 added: #hasInfoLabel
Claus Gittinger <cg@exept.de>
parents: 9143
diff changeset
   779
    cFrame := builder findComponentAt:#NoteBook. "/ #CodeView.
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   780
    cFrame notNil ifTrue:[    
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   781
        visible ifFalse:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   782
            bottomOffset := 0.   
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   783
        ] ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   784
            bottomOffset := -25.   
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   785
        ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   786
        cFrame layout bottomOffset:bottomOffset.   
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   787
        cFrame container notNil ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   788
            cFrame containerChangedSize.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   789
        ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   790
    ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   791
    DefaultInfoVisible := visible
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   792
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   793
    "Created: / 18-02-2007 / 15:01:55 / cg"
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   794
!
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   795
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   796
toolBarVisibilityChanged
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   797
    |toolBarVisible editToolBarVisible toolBar editToolBar noteBook topOffset|
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   798
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   799
    topOffset := 0.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   800
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   801
    toolBar := self componentAt:#ToolBar.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   802
    toolBar notNil ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   803
        toolBarVisible := self toolBarVisibleHolder value.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   804
        DefaultToolBarVisible := toolBarVisible.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   805
        toolBarVisible ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   806
            topOffset := topOffset + toolBar height.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   807
        ]
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   808
    ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   809
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   810
    editToolBar := self componentAt:#EditToolBar.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   811
    editToolBar notNil ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   812
        editToolBar layout 
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   813
            topOffset:topOffset bottomOffset:(topOffset + editToolBar height).
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   814
        "/ force it to recompute its dimension
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   815
        editToolBar container notNil ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   816
            editToolBar containerChangedSize.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   817
        ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   818
        editToolBarVisible := self editToolBarVisibleHolder value.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   819
        DefaultEditToolBarVisible := editToolBarVisible.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   820
        editToolBarVisible ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   821
            topOffset := topOffset + editToolBar height.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   822
        ]
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   823
    ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   824
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   825
    noteBook := self componentAt:#NoteBook.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   826
    noteBook notNil ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   827
        noteBook layout topOffset:topOffset.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   828
        "/ force it to recompute its dimension
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   829
        noteBook container notNil ifTrue:[
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   830
            noteBook containerChangedSize.
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   831
        ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   832
    ].
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   833
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   834
    "Created: / 18-02-2007 / 14:46:22 / cg"
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   835
!
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   836
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   837
update:something with:aParameter from:changedObject
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   838
    ((changedObject == self toolBarVisibleHolder)
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   839
    or:[ changedObject == self editToolBarVisibleHolder ]) ifTrue:[
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   840
        self toolBarVisibilityChanged.
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   841
        ^ self
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   842
    ].
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   843
    changedObject == self infoVisibleHolder ifTrue:[
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   844
        self infoVisibilityChanged.
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   845
        ^ self
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   846
    ].
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   847
    ^ super update:something with:aParameter from:changedObject
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   848
7824
09995d9a889d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7745
diff changeset
   849
    "Modified: / 14-07-2007 / 16:46:14 / cg"
14175
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   850
!
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   851
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   852
windowLabelPrefix
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   853
    |nm|
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   854
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   855
    nm := self class nameWithoutPrefix.
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   856
    (nm endsWith:'Application') ifTrue:[
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   857
        nm := nm copyButLast:'Application' size
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   858
    ].
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   859
    ^ nm
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   860
!
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   861
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   862
workspaceSelectionChanged
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   863
    |wsIndex windowLabel v prefix|
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   864
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   865
    "/ self selected
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   866
    self workspaceHolder value:(v := self selectedWorkspace).
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   867
    wsIndex := self selectedWorkspaceIndexHolder value.
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   868
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   869
    wsIndex ~~ 0 ifTrue:[
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   870
        prefix := self windowLabelPrefix.
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   871
        windowLabel := tabList at:wsIndex ifAbsent:nil.
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   872
        windowLabel notNil ifTrue:[self window label:prefix,': ',windowLabel].
61dceb4984c4 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 13858
diff changeset
   873
    ].
15408
ff62d43d5a1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 15407
diff changeset
   874
ff62d43d5a1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 15407
diff changeset
   875
    v notNil ifTrue:[ v takeFocusWhenMapped:true ]
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   876
! !
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   877
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   878
!MultiViewToolApplication methodsFor:'defaults'!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   879
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   880
defaultFileNameForLoad
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   881
   ^ 'file.txt'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   882
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   883
    "Created: / 25-10-2006 / 14:56:19 / cg"
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   884
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   885
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   886
defaultFileNameForSave
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   887
    ^ 'file.txt'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   888
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   889
    "Modified: / 25-10-2006 / 14:54:13 / cg"
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   890
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   891
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   892
defaultFileNameForSaveAll
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   893
   ^ 'file.txt'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   894
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   895
    "Modified: / 25-10-2006 / 14:55:50 / cg"
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   896
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   897
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   898
defaultPatternLoad
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   899
   ^ '*.txt'
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   900
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   901
    "Created: / 25-10-2006 / 14:57:18 / cg"
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   902
! !
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   903
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   904
!MultiViewToolApplication methodsFor:'initialization'!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   905
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   906
hideToolBarButtonCreated:aButton
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   907
    aButton passiveLevel:(MenuPanel defaultLevel). 
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   908
"/    aButton passiveLevel:1.
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   909
    aButton activeLevel:-1.
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   910
    aButton backgroundColor:(MenuPanel defaultBackgroundColor).
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   911
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   912
    "Created: / 18-02-2007 / 14:48:28 / cg"
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   913
!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   914
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   915
postBuildWith:aBuilder
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   916
    super postBuildWith:aBuilder.
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   917
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   918
    self infoVisibleHolder value ifTrue:[ self infoVisibilityChanged ].
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   919
    (self toolBarVisibleHolder value 
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
   920
    or:[ self editToolBarVisibleHolder value ]) ifTrue:[ self toolBarVisibilityChanged ].
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   921
9694
eb3dff842677 changed:
Claus Gittinger <cg@exept.de>
parents: 9664
diff changeset
   922
    self workspaceSelectionChanged.
eb3dff842677 changed:
Claus Gittinger <cg@exept.de>
parents: 9664
diff changeset
   923
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   924
    "Created: / 18-02-2007 / 15:03:08 / cg"
9694
eb3dff842677 changed:
Claus Gittinger <cg@exept.de>
parents: 9664
diff changeset
   925
    "Modified: / 22-01-2011 / 11:46:35 / cg"
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   926
! !
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
   927
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   928
!MultiViewToolApplication methodsFor:'menu-actions'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   929
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   930
addWindow:aWindow named:name
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   931
    ^ self addWindow:aWindow named:name asFirst:false
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   932
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   933
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   934
addWindow:aWindow named:name asFirst:asFirst
14805
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   935
    ^ self addWindow:aWindow named:name tabIcon:nil asFirst:asFirst
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   936
!
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   937
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   938
addWindow:aWindow named:name tabIcon:iconOrNil
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   939
    ^ self addWindow:aWindow named:name tabIcon:iconOrNil asFirst:false
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   940
!
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   941
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   942
addWindow:aWindow named:name tabIcon:iconOrNil asFirst:asFirst
15407
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   943
    |tabList tabItem wsIndex newSelectedIndex initialFocusView|
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   944
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   945
    tabList := self tabList.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   946
    wsIndex := tabList size + 1.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   947
    wsIndex == 1 ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   948
        "/ first - add a name for the first tab
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   949
        tabList add:(self window label). "/ 'Workspace'.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   950
        wsIndex := wsIndex + 1.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   951
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   952
14805
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   953
    tabItem := name bindWith:wsIndex.
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   954
    iconOrNil notNil ifTrue:[
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   955
        tabItem := LabelAndIcon icon:iconOrNil string:tabItem.
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   956
    ].
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   957
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   958
    workspaces grow:wsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   959
    asFirst ifTrue:[
14805
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   960
        tabList addFirst:tabItem.
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   961
        workspaces replaceFrom:2 to:wsIndex with:workspaces startingAt:1.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   962
        newSelectedIndex := 1.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   963
    ] ifFalse:[
14805
3e0fc4db20cf class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14557
diff changeset
   964
        tabList addLast:tabItem.
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   965
        newSelectedIndex := wsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   966
    ].
9664
a4a6072afcf8 changed:
Claus Gittinger <cg@exept.de>
parents: 9636
diff changeset
   967
15407
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   968
    (aWindow isKeyboardConsumer) ifTrue:[
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   969
        initialFocusView := aWindow.
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   970
    ] ifFalse:[
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   971
        (aWindow scrolledView isKeyboardConsumer) ifTrue:[
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   972
            initialFocusView := aWindow scrolledView
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   973
        ] ifFalse:[
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   974
            initialFocusView := aWindow scrolledView allSubViewsDetect:[:v | v isKeyboardConsumer] ifNone:nil.
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   975
        ]
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   976
    ].
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   977
    (initialFocusView notNil "and:[w isKeyboardConsumer]") ifTrue:[
7c5e7b454c1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14805
diff changeset
   978
        initialFocusView takeFocusWhenMapped:true.
9664
a4a6072afcf8 changed:
Claus Gittinger <cg@exept.de>
parents: 9636
diff changeset
   979
    ].
a4a6072afcf8 changed:
Claus Gittinger <cg@exept.de>
parents: 9636
diff changeset
   980
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   981
    workspaces at:newSelectedIndex put:aWindow.
9694
eb3dff842677 changed:
Claus Gittinger <cg@exept.de>
parents: 9664
diff changeset
   982
    self selectedWorkspaceIndexHolder value:newSelectedIndex.
eb3dff842677 changed:
Claus Gittinger <cg@exept.de>
parents: 9664
diff changeset
   983
    self workspaceSelectionChanged.
eb3dff842677 changed:
Claus Gittinger <cg@exept.de>
parents: 9664
diff changeset
   984
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   985
"/    workspaceHolder value:aWindow.
9664
a4a6072afcf8 changed:
Claus Gittinger <cg@exept.de>
parents: 9636
diff changeset
   986
9694
eb3dff842677 changed:
Claus Gittinger <cg@exept.de>
parents: 9664
diff changeset
   987
    "Modified: / 22-01-2011 / 12:02:59 / cg"
10252
6bc6fc141f49 Merged with JV's branch
vrany
parents: 10221
diff changeset
   988
    "Modified: / 11-06-2011 / 00:05:02 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   989
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   990
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   991
addWorkspace
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
   992
    self addWindow:(self createWorkspace) named:'Workspace%1'
6408
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
   993
!
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
   994
6458
abf7db73fa79 destroy tabs
Claus Gittinger <cg@exept.de>
parents: 6424
diff changeset
   995
destroyTab:tabIndex
abf7db73fa79 destroy tabs
Claus Gittinger <cg@exept.de>
parents: 6424
diff changeset
   996
    self removeWorkspace:tabIndex
abf7db73fa79 destroy tabs
Claus Gittinger <cg@exept.de>
parents: 6424
diff changeset
   997
!
abf7db73fa79 destroy tabs
Claus Gittinger <cg@exept.de>
parents: 6424
diff changeset
   998
8576
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
   999
doIt
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1000
    |v|
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1001
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1002
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1003
        v doIt.
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1004
    ]
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1005
!
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1006
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1007
loadFile:aFileName 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1008
    self loadFile:aFileName encoding:nil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1009
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1010
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1011
loadFile:aFileName encoding:encodingSymbolOrNil
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1012
    |lbl|
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1013
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1014
    lbl := aFileName asFilename withoutSuffix baseName.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1015
    self loadFile:aFileName encoding:encodingSymbolOrNil label:lbl.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1016
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1017
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1018
loadFile:aFileName encoding:encodingSymbolOrNil label:label
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1019
    |file ws|
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1020
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1021
    file := aFileName asFilename.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1022
    ws := self selectedWorkspacesTextView.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1023
    [
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1024
        |contents|
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1025
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1026
        contents := file contents.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1027
        encodingSymbolOrNil notNil ifTrue:[
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1028
            contents := contents encodeFrom:encodingSymbolOrNil into:#'unicode'.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1029
            ws externalEncoding:encodingSymbolOrNil.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1030
        ].
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1031
        ws contents:contents.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1032
        ws defaultFileNameForFileDialog:file pathName.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1033
    ] on:StreamError do:[:ex|
8368
fd864b68c591 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8231
diff changeset
  1034
        Dialog warn:(resources stringWithCRs:'Cannot open "%1":\\%2' with:file asString with:ex description).
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1035
        ^ self
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1036
    ].
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1037
    ws modified:false.
8033
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1038
    self setLabel:label.
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1039
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1040
7745
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1041
loadFile:aFileName label:lbl
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1042
    |encoding|
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1043
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1044
    encoding := CharacterEncoder guessEncodingOfFile:aFileName.
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1045
    (encoding == #'iso8859-1' or:[encoding == #'ascii']) ifTrue:[
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1046
        encoding := nil
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1047
    ].
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1048
    self loadFile:aFileName encoding:encoding label:lbl.
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1049
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1050
    "Created: / 15-03-2007 / 11:52:21 / cg"
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1051
!
de4f256227cd *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7663
diff changeset
  1052
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1053
menuLoad
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1054
    |file|
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1055
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1056
    (self askIfModified:'Text was modified. Load anyway ?' yesButton:'Load') ifFalse:[ ^ self].
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1057
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1058
    file := Dialog 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1059
                requestFileName:(resources string:'Load file') 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1060
                default:(self defaultFileNameForLoad) 
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1061
                pattern:(self defaultPatternLoad).
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1062
    file size ~~ 0 ifTrue:[
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1063
        self loadFile:file
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1064
    ]
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1065
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1066
    "Modified: / 25-10-2006 / 14:57:34 / cg"
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1067
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1068
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1069
menuPrint
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1070
    |ws|
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1071
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1072
    ws := self selectedWorkspacesTextView.
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1073
    ws doPrint
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1074
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1075
    "Created: / 25-10-2006 / 15:01:51 / cg"
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1076
!
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1077
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1078
menuSaveAllAs
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
    self 
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1080
        askForFile:'Save all Buffers into:' 
8196
29ed5a2bf16d fixed saveAll
Claus Gittinger <cg@exept.de>
parents: 8033
diff changeset
  1081
        default:(self defaultFileNameForSaveAll)
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1082
        thenDo:[:file :doAppend |
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1083
            |ws append|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1084
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1085
            append := doAppend.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1086
            workspaces do:[:subView |
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1087
                |ws|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1088
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1089
                ws := self workspaceViewOfView:subView.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1090
                ws notNil ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1091
                    ws saveAs:file doAppend:append.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1092
                    ws modified:false.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1093
                ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1094
                append := true.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1095
            ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1096
        ]
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1097
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1098
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1099
menuSaveAs
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1100
    self 
6408
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1101
        askForFile:'Save Buffer into:'
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1102
        default:(self defaultFileNameForSave)
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1103
        thenDo:[:file :doAppend |
8033
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1104
            |ws lbl|
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1105
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1106
            ws := self selectedWorkspacesTextView.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1107
            ws saveAs:file doAppend:doAppend.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1108
            ws modified:false.
8395
3596ebae2d90 changed #defaultFileNameForSave
Claus Gittinger <cg@exept.de>
parents: 8368
diff changeset
  1109
            "/ ws defaultFileNameForFileDialog:file asFilename baseName.
8033
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1110
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1111
            lbl := file asFilename withoutSuffix baseName.
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1112
            self setLabel:lbl.
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1113
        ]
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1114
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1115
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
newWorkspace
6863
4e2e267622eb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6634
diff changeset
  1117
    self class new openWithExtent:(self builder window extent).
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1118
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1119
    "Modified: / 25-10-2006 / 14:39:15 / cg"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1120
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1121
14279
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
  1122
openFontDialog
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
  1123
    self selectedWorkspace changeFont
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
  1124
!
9214ed746ffd class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14175
diff changeset
  1125
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1126
openSTXDocumentation
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1127
    "opens the top documentation file"
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1128
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1129
    self openHTMLDocument: 'TOP.html'
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1130
!
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1131
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1132
openSettingsDialog
14557
f2fbe336969a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14279
diff changeset
  1133
    |settingsList|
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1134
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1135
    settingsList := 
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1136
        #(
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1137
           #('Keyboard Mappings'    #'AbstractSettingsApplication::KbdMappingSettingsAppl'          )
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1138
"/           #('Debugger'             #'AbstractSettingsApplication::DebuggerSettingsAppl'            )
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1139
           #('Editor'               #'AbstractSettingsApplication::EditSettingsAppl'                )
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1140
"/           #('Syntax Color'         #'AbstractSettingsApplication::SyntaxColorSettingsAppl'         )
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1141
"/           #('Code Format'          #'AbstractSettingsApplication::SourceCodeFormatSettingsAppl'    )
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1142
        ).
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1143
14557
f2fbe336969a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14279
diff changeset
  1144
    SettingsDialog 
f2fbe336969a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14279
diff changeset
  1145
        openWithList:settingsList 
f2fbe336969a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 14279
diff changeset
  1146
        label:(resources string:'Settings').
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1147
!
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1148
8576
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1149
printIt
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1150
!
d8906424444d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8528
diff changeset
  1151
8772
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1152
removeAllWorkspacesExcept:wsIndex
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1153
    tabList size downTo:wsIndex+1 do:[:idx |
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1154
        self removeWorkspace:idx.
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1155
    ].
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1156
    1 to:wsIndex-1 do:[:idx |
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1157
        self removeWorkspace:1.
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1158
    ].
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1159
!
Claus Gittinger <cg@exept.de>
parents: 8615
diff changeset
  1160
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1161
removeWorkspace
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1162
    self removeWorkspace:(self selectedWorkspaceIndexHolder value)
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1163
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1164
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1165
removeWorkspace:wsIndex
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1166
    |tabList newWsIndex|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1167
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1168
    wsIndex == self selectedWorkspaceIndexHolder value ifTrue:[
6509
bcaae26df254 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6458
diff changeset
  1169
        (self askIfModified:'Text was modified. Remove buffer anyway ?' yesButton:'Remove Buffer') ifFalse:[
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1170
            ^ self
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1171
        ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1172
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1173
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1174
    tabList := self tabList.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1175
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1176
    wsIndex == tabList size ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1177
        newWsIndex := wsIndex - 1.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1178
    ] ifFalse:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1179
        newWsIndex := wsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1180
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1181
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1182
    tabList removeIndex:wsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1183
    (workspaces at:wsIndex) destroy.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1184
    workspaces removeIndex:wsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1185
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1186
    tabList size == 1 ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1187
        self window label:(tabList at:1).
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1188
        tabList removeIndex:1
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1189
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1190
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1191
    workspaceHolder value:(workspaces at:newWsIndex).
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1192
    self selectedWorkspaceIndexHolder value:newWsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1193
    "/ to force change (update workspaceHolder - even if same index)
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1194
    self selectedWorkspaceIndexHolder changed:#value.   
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1195
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1196
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1197
renameWorkspace
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1198
    self renameWorkspace:(self selectedWorkspaceIndexHolder value)
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1199
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1200
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1201
renameWorkspace:wsIndex
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1202
    |tabList oldName newName|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1203
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1204
    tabList := self tabList.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1205
    tabList isEmpty ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1206
        oldName := self window label
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1207
    ] ifFalse:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1208
        oldName := tabList at:wsIndex.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1209
    ].
11626
fb8ca9aad4a3 changed: #renameWorkspace:
Claus Gittinger <cg@exept.de>
parents: 11482
diff changeset
  1210
    newName := Dialog request:(resources string:'New Name for "%1":' with:oldName) initialAnswer:oldName.
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1211
    newName size == 0 ifTrue:[ ^ self].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1212
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1213
    self renameWorkspace:wsIndex to:newName.
11626
fb8ca9aad4a3 changed: #renameWorkspace:
Claus Gittinger <cg@exept.de>
parents: 11482
diff changeset
  1214
fb8ca9aad4a3 changed: #renameWorkspace:
Claus Gittinger <cg@exept.de>
parents: 11482
diff changeset
  1215
    "Modified: / 20-07-2012 / 10:21:29 / cg"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1216
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1217
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1218
renameWorkspace:wsIndex to:newName
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1219
    |tabList|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1220
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1221
    tabList := self tabList.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1222
    tabList notEmpty ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1223
        tabList at:wsIndex put:newName.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1224
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1225
    wsIndex == self selectedWorkspaceIndexHolder value ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1226
        self window label:newName.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1227
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1228
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1229
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1230
!MultiViewToolApplication methodsFor:'menu-actions-editing'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1231
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1232
copySelection
8498
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1233
    |v|
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1234
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1235
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1236
        v copySelection
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1237
    ]
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1238
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1239
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1240
cutSelection
8498
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1241
    |v|
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1242
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1243
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1244
        v cutSelection
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1245
    ].
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1246
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1247
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1248
paste
8498
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1249
    |v|
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1250
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1251
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1252
        v paste
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1253
    ]
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1254
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1255
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1256
paste:aString
9634
c09155118873 changed: #paste:
Claus Gittinger <cg@exept.de>
parents: 9633
diff changeset
  1257
    |v|
9633
cbd9b7c06f28 changed: #paste:
Claus Gittinger <cg@exept.de>
parents: 9380
diff changeset
  1258
9634
c09155118873 changed: #paste:
Claus Gittinger <cg@exept.de>
parents: 9633
diff changeset
  1259
    v := (workspaceHolder value) ? (self selectedWorkspacesTextView).
11482
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1260
    [
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1261
        v perform:#paste: with:aString.
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1262
    ] on:MessageNotUnderstood do:[:ex|
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1263
        "special code, to catch exeception sent from a scrolled view,
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1264
         which has a different receiver tha v"
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1265
        (ex selector ~~ #paste:) ifTrue:[
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1266
            ex reject.
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1267
        ].
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1268
        "else ignore it"
e945c7253f9b changed: #paste:
Stefan Vogel <sv@exept.de>
parents: 10252
diff changeset
  1269
    ].
9634
c09155118873 changed: #paste:
Claus Gittinger <cg@exept.de>
parents: 9633
diff changeset
  1270
9636
8593b50b09dc changed: #paste:
Claus Gittinger <cg@exept.de>
parents: 9634
diff changeset
  1271
    "Modified: / 16-11-2010 / 15:27:39 / cg"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1272
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1273
8509
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1274
redo
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1275
    |v|
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1276
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1277
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1278
        v redo.
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1279
    ]
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1280
!
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1281
8498
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1282
search
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1283
    |v|
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1284
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1285
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1286
        v search.
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1287
    ]
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1288
!
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1289
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1290
selectAll
8498
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1291
    |v|
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1292
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1293
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1294
        v selectAll.
3f0be0fbfbec support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8497
diff changeset
  1295
    ]
8509
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1296
!
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1297
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1298
undo
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1299
    |v|
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1300
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1301
    (v := self selectedWorkspacesTextView) notNil ifTrue:[
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1302
        v undo.
2b395fdbab78 more editMenu stuff
Claus Gittinger <cg@exept.de>
parents: 8507
diff changeset
  1303
    ]
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1304
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1305
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1306
!MultiViewToolApplication methodsFor:'private'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1307
6408
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1308
askForFile:question default:defaultFilename thenDo:aBlock
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1309
    Dialog
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1310
        requestSaveFileName:(resources string:question) 
6408
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1311
        default:defaultFilename 
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1312
        fromDirectory:nil 
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1313
        action:[:fileName | aBlock value:fileName value:false] 
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1314
        appendAction:[:fileName | aBlock value:fileName value:true]
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1315
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1316
"/    |file doAppend|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1317
"/
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1318
"/    doAppend := false.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1319
"/    Dialog aboutToOpenBoxNotificationSignal handle:[:n |
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1320
"/        |box|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1321
"/
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1322
"/        box := n parameter.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1323
"/        box addButton:(Button label:'Append' action:[doAppend := true. box okPressed]).
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1324
"/        n proceed.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1325
"/    ] do:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1326
"/        file := Dialog requestFileName:question default:'file.wsp'. 
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1327
"/    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1328
"/    file isEmptyOrNil ifFalse:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1329
"/        aBlock value:file value:doAppend
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1330
"/    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1331
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1332
6408
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1333
askForFile:question thenDo:aBlock
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1334
    ^ self
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1335
        askForFile:question default:'file.wsp' thenDo:aBlock
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1336
!
e0f701a20cae remember last-saved fileName for next default
Claus Gittinger <cg@exept.de>
parents: 6354
diff changeset
  1337
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1338
askIfAnyModified:arg1 yesButton:arg2 
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1339
    "raise an error: must be redefined in concrete subclass(es)"
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1340
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1341
    ^ self subclassResponsibility
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1342
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1343
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1344
askIfModified:question yesButton:yesButtonText
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1345
    "tell user, that code has been modified - let her confirm"
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1346
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1347
    |textView|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1348
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1349
    textView := self selectedWorkspace.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1350
    (self isModifiedWorkspace:textView) ifFalse:[^ true].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1351
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1352
    (Dialog 
6354
08a483e3beda *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6244
diff changeset
  1353
        confirm:(resources stringWithCRs:question)
6634
a94d8a07247d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6509
diff changeset
  1354
        yesLabel:(resources string:yesButtonText)
a94d8a07247d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6509
diff changeset
  1355
        noLabel:(resources string:'Cancel'))
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1356
    ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1357
        "/ reset modified flag so question is asked only once
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1358
        textView modified:false.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1359
        ^ true
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1360
    ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1361
    ^ false
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1362
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1363
    "Modified: 2.10.1997 / 14:23:47 / stefan"
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1364
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1365
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1366
createWorkspace
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1367
    |ws|
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1368
7475
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1369
    ws := (HVScrollableView for:EditTextView).
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1370
    ^ ws
54b889153fc7 refactored to allow for standAlone multiTab editors
Claus Gittinger <cg@exept.de>
parents: 6863
diff changeset
  1371
9664
a4a6072afcf8 changed:
Claus Gittinger <cg@exept.de>
parents: 9636
diff changeset
  1372
    "Modified: / 09-12-2010 / 10:55:25 / cg"
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1373
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1374
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1375
isModifiedWorkspace:aView
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1376
    self subclassResponsibility
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1377
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1378
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1379
selectedWorkspacesTextView
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1380
    ^ self workspaceViewOfView:(self selectedWorkspace)
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1381
!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1382
8033
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1383
setLabel:label
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1384
    tabList size > 1 ifTrue:[
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1385
        tabList at:self selectedWorkspaceIndexHolder value put:label
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1386
    ].
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1387
    self window label:label.
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1388
!
233d210c526a label handling after load
Claus Gittinger <cg@exept.de>
parents: 7852
diff changeset
  1389
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1390
workspaceViewOfView:aView
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1391
    |view|
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1392
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1393
    view := aView.
7663
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1394
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1395
    (view isScrollWrapper) ifTrue:[
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1396
        view := view scrolledView.
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1397
        view isNil ifTrue:[^ nil].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1398
    ].
7663
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1399
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1400
    (view isTextView) ifFalse:[
7663
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1401
        (view isKindOf:InspectorView) ifTrue:[
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1402
            view := view workspace.
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1403
            (view isScrollWrapper) ifTrue:[
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1404
                view := view scrolledView
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1405
            ].
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1406
        ].
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1407
    ].
7663
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1408
    (view isTextView) ifTrue:[^ view].
c11efe4cbcf3 care for eval workspace
Claus Gittinger <cg@exept.de>
parents: 7653
diff changeset
  1409
    ^ view allSubViewsDetect:[:v| v name = #Workspace] ifNone:nil.
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1410
! !
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1411
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1412
!MultiViewToolApplication methodsFor:'user actions'!
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1413
8497
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
  1414
hideEditToolbar
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
  1415
    self editToolBarVisibleHolder value:false
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
  1416
!
08a96ef8a3c4 support an edit-ops-toolbar
Claus Gittinger <cg@exept.de>
parents: 8395
diff changeset
  1417
7650
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1418
hideToolbar
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1419
    self toolBarVisibleHolder value:false
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1420
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1421
    "Created: / 18-02-2007 / 14:55:54 / cg"
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1422
! !
12fcca896ba0 workspaceApp refactored
Claus Gittinger <cg@exept.de>
parents: 7475
diff changeset
  1423
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1424
!MultiViewToolApplication class methodsFor:'documentation'!
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1425
15408
ff62d43d5a1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 15407
diff changeset
  1426
version
15945
06616f490bf6 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15408
diff changeset
  1427
    ^ '$Header$'
15408
ff62d43d5a1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 15407
diff changeset
  1428
!
ff62d43d5a1a class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 15407
diff changeset
  1429
9058
Claus Gittinger <cg@exept.de>
parents: 8772
diff changeset
  1430
version_CVS
15945
06616f490bf6 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15408
diff changeset
  1431
    ^ '$Header$'
5302
615a0020e15c initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1432
! !
12482
e801a369d243 class: MultiViewToolApplication
Claus Gittinger <cg@exept.de>
parents: 11727
diff changeset
  1433