TerminalApplication.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 14 Jun 2018 22:19:39 +0100
branchjv
changeset 18227 d25a407ba86d
parent 15950 23be8cf85415
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:
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
 COPYRIGHT (c) 2001 by eXept Software AG
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
              All Rights Reserved
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
 This software is furnished under a license and may be used
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
 hereby transferred.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
"
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
"{ Package: 'stx:libtool' }"
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
15950
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15566
diff changeset
    14
"{ NameSpace: Smalltalk }"
23be8cf85415 Bugfix in merge tool.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15566
diff changeset
    15
5305
5e3c955b7c4d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5300
diff changeset
    16
MultiViewToolApplication subclass:#TerminalApplication
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
    17
	instanceVariableNames:'initialDirectory keepAlive keepAliveProcess'
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
	classVariableNames:''
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	poolDictionaries:''
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
	category:'Interface-Smalltalk'
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!TerminalApplication class methodsFor:'documentation'!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
copyright
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
"
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
 COPYRIGHT (c) 2001 by eXept Software AG
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
              All Rights Reserved
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
 This software is furnished under a license and may be used
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
 only in accordance with the terms of that license and with the
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
 inclusion of the above copyright notice.   This software may not
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
 be provided or otherwise made available to, or used by, any
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
 other person.  No title to or ownership of the software is
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
 hereby transferred.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
"
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
documentation
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
"
5297
8408fbaf5555 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5296
diff changeset
    41
    A simple wrapper around a Terminal-View, adding a pullDown menu.
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
    [author:]
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
        Claus Gittinger
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
"
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
! !
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
!TerminalApplication class methodsFor:'interface specs'!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
windowSpec
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
    "This resource specification was automatically generated
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
     by the UIPainter of ST/X."
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
    "Do not manually edit this!! If it is corrupted,
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
     the UIPainter may not be able to read the specification."
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
    "
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
     UIPainter new openOnClass:TerminalApplication andSelector:#windowSpec
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
     TerminalApplication new openInterface:#windowSpec
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
     TerminalApplication open
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
    "
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
    <resource: #canvas>
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
    ^ 
13939
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    66
    #(FullSpec
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    67
       name: windowSpec
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    68
       window: 
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    69
      (WindowSpec
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    70
         label: 'Terminal'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    71
         name: 'Terminal'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    72
         min: (Point 10 10)
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    73
         bounds: (Rectangle 0 0 432 241)
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    74
         menu: mainMenu
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    75
       )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    76
       component: 
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    77
      (SpecCollection
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    78
         collection: (
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    79
          (NoteBookViewSpec
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    80
             name: 'NoteBook1'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    81
             layout: (LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    82
             model: selectedWorkspaceIndexHolder
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    83
             menu: tabList
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    84
             useIndex: true
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    85
             accessTabMenuAction: tabMenuAt:
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    86
             destroyTabAction: removeWorkspace:
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    87
             canvas: workspaceHolder
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    88
             canvasInset: 0
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    89
             keepCanvasAlive: true
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    90
             tabLevel: 1
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
           )
13939
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    92
          )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    93
        
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    94
       )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
    95
     )
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
! !
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
!TerminalApplication class methodsFor:'menu specs'!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
mainMenu
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
    "This resource specification was automatically generated
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
     by the MenuEditor of ST/X."
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
    "Do not manually edit this!! If it is corrupted,
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
     the MenuEditor may not be able to read the specification."
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   107
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
    "
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   109
     MenuEditor new openOnClass:TerminalApplication andSelector:#mainMenu
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   110
     (Menu new fromLiteralArrayEncoding:(TerminalApplication mainMenu)) startUp
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
    "
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
    <resource: #menu>
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
    ^ 
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   116
     #(Menu
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   117
        (
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   118
         (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   119
            label: 'File'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   120
            submenu: 
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   121
           (Menu
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   122
              (
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   123
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   124
                  label: 'New Shell'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   125
                  itemValue: newWorkspace
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   127
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   128
                  label: '-'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   129
                )
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   130
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   131
                  label: 'Playback File...'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   132
                  itemValue: menuPlayback
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   134
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   135
                  label: '-'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   136
                )
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   137
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   138
                  label: 'Save As...'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   139
                  itemValue: menuSaveAs
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   141
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   142
                  enabled: hasMultipleBuffersHolder
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   143
                  label: 'Save all As...'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   144
                  itemValue: menuSaveAllAs
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   146
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   147
                  label: '-'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   148
                )
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   149
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   150
                  label: 'Exit'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   151
                  itemValue: closeRequest
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   153
               )
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   154
              nil
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   155
              nil
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   156
            )
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   157
          )
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   158
         (MenuItem
13939
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   159
            label: 'Buffers'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   160
            nameKey: Buffer
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   161
            submenu: 
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   162
           (Menu
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   163
              (
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   164
               (MenuItem
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   165
                  label: 'Add Buffer'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   166
                  itemValue: addWorkspace
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   167
                )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   168
               (MenuItem
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   169
                  label: 'Rename...'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   170
                  itemValue: renameWorkspace
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   171
                )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   172
               (MenuItem
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   173
                  label: '-'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   174
                )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   175
               (MenuItem
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   176
                  enabled: canRemoveWorkspace
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   177
                  label: 'Remove Buffer'
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   178
                  itemValue: removeWorkspace
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   179
                )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   180
               )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   181
              nil
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   182
              nil
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   183
            )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   184
          )
c34a17c85f6c class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13903
diff changeset
   185
         (MenuItem
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   186
            label: 'View'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   187
            submenu: 
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   188
           (Menu
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   189
              (
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   190
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   191
                  label: 'Normal'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   192
                  itemValue: setNormalDisplayMode
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   194
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   195
                  label: 'Reverse'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   196
                  itemValue: setReverseDisplayMode
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   198
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   199
                  label: 'Green'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   200
                  itemValue: setGreenDisplayMode
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
                )
13217
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   202
               (MenuItem
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   203
                  label: 'Red'
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   204
                  itemValue: setRedDisplayMode
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   205
                )
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   206
               (MenuItem
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   207
                  label: '-'
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   208
                )
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   209
               (MenuItem
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   210
                  label: 'Ignore Text Color Commands'
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   211
                  indication: noColors:
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   212
                )
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
               )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
            )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
          )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   218
         (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   219
            label: 'Edit'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   220
            submenu: 
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   221
           (Menu
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   222
              (
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   223
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   224
                  enabled: hasSelectionInActiveWorkspace
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   225
                  label: 'Copy'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   226
                  itemValue: copySelection
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   228
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   229
                  label: 'Paste'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   230
                  itemValue: paste
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   232
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   233
                  label: '-'
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   235
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   236
                  label: 'Select All'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   237
                  itemValue: selectAll
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
                )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
               )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
            )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
          )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   244
         (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   245
            label: 'Shell'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   246
            submenu: 
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   247
           (Menu
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   248
              (
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   249
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   250
                  label: 'Interrupt'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   251
                  itemValue: doSendInterrupt
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   253
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   254
                  label: 'Kill'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   255
                  itemValue: doSendKillSignal
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   257
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   258
                  label: '-'
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   260
               (MenuItem
13244
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   261
                  label: 'Send "~." (ssh/telnet quit)'
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   262
                  itemValue: doSendTildeStop
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   263
                )
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   264
               (MenuItem
13260
c3f318979431 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13259
diff changeset
   265
                  label: 'Keep Connection Alive'
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   266
                  indication: keepSSHConnectionAliveHolder
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   267
                )
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   268
               (MenuItem
13244
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   269
                  label: '-'
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   270
                )
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   271
               (MenuItem
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   272
                  label: 'Reset Terminal'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   273
                  itemValue: doReset
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
                )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
               )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
            )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
          )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   280
         (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   281
            label: 'Help'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   282
            startGroup: right
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   283
            submenu: 
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   284
           (Menu
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   285
              (
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   286
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   287
                  label: 'Documentation'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   288
                  itemValue: openDocumentation
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   290
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   291
                  label: '-'
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
                )
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   293
               (MenuItem
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   294
                  label: 'About this Application...'
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   295
                  itemValue: openAboutThisApplication
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
                )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
               )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
              nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
            )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
          )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
         )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   303
        nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
        nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
      )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
tabMenu
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
    "This resource specification was automatically generated
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
     by the MenuEditor of ST/X."
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
    "Do not manually edit this!! If it is corrupted,
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
     the MenuEditor may not be able to read the specification."
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
    "
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
     MenuEditor new openOnClass:WorkspaceApplication andSelector:#tabMenu
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
     (Menu new fromLiteralArrayEncoding:(WorkspaceApplication tabMenu)) startUp
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
    "
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
    <resource: #menu>
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
    ^ 
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
     #(#Menu
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
        #(
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
         #(#MenuItem
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
            #label: 'Add Buffer'
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
            #translateLabel: true
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
            "/ #triggerOnDown: true
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
            #value: #addWorkspace
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
          )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
         #(#MenuItem
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
            #label: 'Rename...'
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
            #translateLabel: true
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
            "/ #triggerOnDown: true
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
            #value: #renameWorkspace:
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
          )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
         #(#MenuItem
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
            #label: '-'
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
          )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
         #(#MenuItem
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
            #label: 'Remove Buffer'
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
            #translateLabel: true
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
            "/ #triggerOnDown: true
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
            #value: #removeWorkspace:
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
            #enabled: #canRemoveWorkspace:
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
          )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
         )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
        nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
        nil
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
      )
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
! !
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
!TerminalApplication class methodsFor:'special startup'!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
5300
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   355
openIn:aDirectory
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   356
    "launch a new terminal in some directory"
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   357
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   358
    |terminal|
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
5300
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   360
    terminal := self new.
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   361
    terminal initialDirectory:aDirectory.
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   362
    terminal open.
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   363
    ^ terminal
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
    "
5300
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   366
     TerminalApplication open
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   367
     TerminalApplication openIn:'/etc'
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
    "
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
! !
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   371
!TerminalApplication methodsFor:'aspects'!
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   372
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   373
keepSSHConnectionAliveHolder
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   374
    keepAlive isNil ifTrue:[
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   375
        keepAlive := false asValue.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   376
        keepAlive onChangeSend:#keepSSHConnectionAliveHolderChanged to:self.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   377
    ].
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   378
    ^ keepAlive
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   379
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   380
    "Created: / 30-07-2013 / 07:51:59 / cg"
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   381
! !
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   382
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
!TerminalApplication methodsFor:'menu-actions'!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
addWorkspace
14803
49e18f3d2f26 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13939
diff changeset
   386
    self 
49e18f3d2f26 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13939
diff changeset
   387
        addWindow:(self createWorkspace) 
49e18f3d2f26 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13939
diff changeset
   388
        named:'Terminal%1'
49e18f3d2f26 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13939
diff changeset
   389
        "/ tabIcon:(ToolbarIconLibrary console13x13Icon) 
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
createWorkspace
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
    |scr|
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
10937
9e0d1a54404a changed: #createWorkspace
vrany
parents: 10253
diff changeset
   395
"/    JV@2011-11-30: XTermView disabled as recent changes in
9e0d1a54404a changed: #createWorkspace
vrany
parents: 10253
diff changeset
   396
"/    #startShellInSelectedWindow leads to infinite loop.
9e0d1a54404a changed: #createWorkspace
vrany
parents: 10253
diff changeset
   397
"/    further investigation needed.        
13903
4fdd33f4b23f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13815
diff changeset
   398
    "/ sorry jan: XtermView seems to be not ok (masterView:) and also not working
4fdd33f4b23f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13815
diff changeset
   399
    "/ on all systems (mac). make this a configurable option
4fdd33f4b23f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13815
diff changeset
   400
    false "(OperatingSystem isUNIXlike and:[XTermView notNil])" ifTrue:[
13815
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   401
        scr := XTermView new.
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   402
        scr workingDirectory: initialDirectory.
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   403
    ] ifFalse:[
10937
9e0d1a54404a changed: #createWorkspace
vrany
parents: 10253
diff changeset
   404
        VT100TerminalView isNil ifTrue:[
9e0d1a54404a changed: #createWorkspace
vrany
parents: 10253
diff changeset
   405
            self error:'missing: VT100TerminalView'
9e0d1a54404a changed: #createWorkspace
vrany
parents: 10253
diff changeset
   406
        ].
10253
b2a15ece506c Merged with JV's branch
vrany
parents: 9812
diff changeset
   407
        scr := (HVScrollableView for:VT100TerminalView).
b2a15ece506c Merged with JV's branch
vrany
parents: 9812
diff changeset
   408
        scr autoHideScrollBars:false.
b2a15ece506c Merged with JV's branch
vrany
parents: 9812
diff changeset
   409
        scr horizontalMini:true.
13815
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   410
    ].
10253
b2a15ece506c Merged with JV's branch
vrany
parents: 9812
diff changeset
   411
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
    self window realized ifTrue:[
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
        self window sensor pushUserEvent:#startShellInSelectedWindow for:self.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
    ].
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
    ^ scr
9812
a2efaef3f9e1 changed:
Claus Gittinger <cg@exept.de>
parents: 5662
diff changeset
   416
a2efaef3f9e1 changed:
Claus Gittinger <cg@exept.de>
parents: 5662
diff changeset
   417
    "Modified: / 08-04-2011 / 14:56:57 / cg"
13815
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   418
    "Modified: / 03-04-2012 / 10:19:03 / Jan Vrany <jan.vrany@fit.cvut.cz>"
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
doKill
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
    self selectedWorkspacesTextView doKill.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
doReset
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
    self selectedWorkspacesTextView doReset.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
doSendInterrupt
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
    self selectedWorkspacesTextView doSendInterrupt.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
doSendKillSignal
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
    self selectedWorkspacesTextView doSendKillSignal.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
13244
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   437
doSendTildeStop
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   438
    self selectedWorkspacesTextView send:'~.'.
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   439
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   440
    "Created: / 29-07-2013 / 18:20:36 / cg"
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   441
!
094cfdd3b683 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13217
diff changeset
   442
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   443
keepSSHConnectionAliveHolderChanged
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   444
    keepAlive value ifTrue:[
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   445
        self startKeepAliveProcess
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   446
    ] ifFalse:[
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   447
        self stopKeepAliveProcess
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   448
    ]
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   449
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   450
    "Created: / 30-07-2013 / 07:53:12 / cg"
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   451
!
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   452
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
menuPlayback
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
    |file suff|
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
    suff := 'sh'.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
    OperatingSystem isMSDOSlike ifTrue:[ suff := 'bat' ].
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
    file := Dialog requestFileName:'Playback file' default:('file.',suff) pattern:('*.',suff).
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
    file size > 0 ifTrue:[
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
        self playbackFile:file
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
    ]
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
13217
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   465
noColors
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   466
    ^ self selectedWorkspacesTextView noColors
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   467
!
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   468
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   469
noColors:aBoolean
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   470
    self selectedWorkspacesTextView noColors:aBoolean.
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   471
!
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   472
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   473
openDocumentation
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   474
    "opens the documentation file"
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   475
5351
8e45ac25600d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5305
diff changeset
   476
    self openHTMLDocument: 'tools/misc/TOP.html#TERMINAL'
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   477
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   478
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   479
playbackFile:aFileName 
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   480
    |file ws|
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   481
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   482
    file := aFileName asFilename.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   483
    file exists ifFalse:[
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
        Dialog warn:(resources string:'File %1 does not exist.' with:file asString).
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
        ^ self
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
    ].
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   487
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
    ws := self selectedWorkspacesTextView.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
    file readingLinesDo:[:eachLine | ws sendLine:eachLine]
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   490
    .
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   491
!
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   492
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   493
setGreenDisplayMode
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   494
    self selectedWorkspacesTextView setGreenDisplayMode.
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   495
!
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   496
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   497
setNormalDisplayMode
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   498
    self selectedWorkspacesTextView setNormalDisplayMode.
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   499
!
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   500
13217
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   501
setRedDisplayMode
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   502
    self selectedWorkspacesTextView setRedDisplayMode.
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   503
!
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   504
13214
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   505
setReverseDisplayMode
7727357e3c6f class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13135
diff changeset
   506
    self selectedWorkspacesTextView setReverseDisplayMode.
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   507
! !
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   508
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   509
!TerminalApplication methodsFor:'private'!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   510
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
isModifiedWorkspace:aView
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
    ^ false
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   513
!
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   514
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   515
startKeepAliveProcess
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   516
    "keep alive, by sending a return from time to time.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   517
     Raise to top, if connection is lost"
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   518
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   519
    keepAliveProcess isNil ifTrue:[
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   520
        keepAliveProcess :=
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   521
            [
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   522
                [true] whileTrue:[
13259
30315be68637 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13257
diff changeset
   523
                    self selectedWorkspacesTextView sendCR:''.
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   524
                    Delay waitForSeconds:30.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   525
                ].
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   526
            ] newProcess.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   527
        keepAliveProcess resume.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   528
    ].
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   529
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   530
    "Created: / 30-07-2013 / 09:14:36 / cg"
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   531
!
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   532
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   533
stopKeepAliveProcess
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   534
    |p|
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   535
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   536
    (p := keepAliveProcess) notNil ifTrue:[
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   537
        keepAliveProcess := nil.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   538
        p terminate
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   539
    ].
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   540
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   541
    "Created: / 30-07-2013 / 09:15:05 / cg"
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
! !
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
13815
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   544
!TerminalApplication methodsFor:'startup'!
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   545
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   546
startShellInSelectedWindow
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   547
    |vt|
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   548
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   549
    vt := self selectedWorkspacesTextView.
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   550
    (vt notNil and:[vt superView realized]) ifFalse:[
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   551
        self window sensor pushUserEvent:#startShellInSelectedWindow for:self.
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   552
        ^ self.
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   553
    ].
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   554
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   555
    vt startShellIn:initialDirectory.
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   556
    vt shellTerminateAction:[self shellFinishedInWorkspace:vt].
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   557
    vt masterWindow:(self window).  "/ to change window title
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   558
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   559
    "Modified: / 07-04-2011 / 09:03:55 / cg"
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   560
    "Modified: / 03-04-2012 / 10:31:01 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   561
! !
2b090510c0b7 merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13260
diff changeset
   562
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   563
!TerminalApplication methodsFor:'startup & release'!
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   564
5300
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   565
initialDirectory:aDirectory
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   566
    initialDirectory := aDirectory
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   567
!
260ccc2864cb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5299
diff changeset
   568
5299
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   569
postBuildWith:aBuilder
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   570
    |w h|
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   571
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   572
    super postBuildWith:aBuilder.
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   573
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   574
    w := self window width max:(workspaces first preferredExtent x).
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   575
    h := builder menuBar height + (workspaces first preferredExtent y).
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   576
    self window extent:(w@h).
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   577
!
b85cdb7cecc8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5297
diff changeset
   578
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   579
postOpenWith:aBuilder
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   580
    self startShellInSelectedWindow.
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
    super postOpenWith:aBuilder
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   583
13257
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   584
release
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   585
    self stopKeepAliveProcess.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   586
    super release.
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   587
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   588
    "Created: / 30-07-2013 / 07:54:16 / cg"
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   589
!
25b6402f5883 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13245
diff changeset
   590
5305
5e3c955b7c4d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5300
diff changeset
   591
shellFinishedInWorkspace:aView
5e3c955b7c4d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5300
diff changeset
   592
    "/ vt backgroundColor:(Color red).
5e3c955b7c4d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5300
diff changeset
   593
    aView 
5e3c955b7c4d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5300
diff changeset
   594
        cr; 
5e3c955b7c4d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5300
diff changeset
   595
        nextPutLine:('>> shell terminated.' asText allBold colorizeAllWith:Color red).
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
! !
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   597
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
!TerminalApplication class methodsFor:'documentation'!
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
13217
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   600
version
14803
49e18f3d2f26 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13939
diff changeset
   601
    ^ '$Header: /cvs/stx/stx/libtool/TerminalApplication.st,v 1.23 2014-10-25 12:51:00 cg Exp $'
13217
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   602
!
bf43312549a0 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13214
diff changeset
   603
9812
a2efaef3f9e1 changed:
Claus Gittinger <cg@exept.de>
parents: 5662
diff changeset
   604
version_CVS
14803
49e18f3d2f26 class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 13939
diff changeset
   605
    ^ '$Header: /cvs/stx/stx/libtool/TerminalApplication.st,v 1.23 2014-10-25 12:51:00 cg Exp $'
5296
b3edac46b1b6 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   606
! !
13135
6da72f8dbefa class: TerminalApplication
Claus Gittinger <cg@exept.de>
parents: 10937
diff changeset
   607