Launcher.st
author Claus Gittinger <cg@exept.de>
Wed, 24 Jan 1996 20:48:35 +0100
changeset 335 c725e5d99819
parent 327 44a25cae2645
child 341 d4a4fb700086
permissions -rw-r--r--
localSource-first in misc-settings box
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
88
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     1
"
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     2
 COPYRIGHT (c) 1995 by Claus Gittinger
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     3
	      All Rights Reserved
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     4
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     5
 This software is furnished under a license and may be used
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     6
 only in accordance with the terms of that license and with the
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     8
 be provided or otherwise made available to, or used by, any
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
     9
 other person.  No title to or ownership of the software is
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    10
 hereby transferred.
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    11
"
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
    12
11b4ce85104e Initial revision
claus
parents:
diff changeset
    13
ApplicationModel subclass:#NewLauncher
281
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
    14
	instanceVariableNames:'myMenu buttonPanel transcript infoView infoProcess helpIsOn'
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
    15
	classVariableNames:'CachedAboutIcon'
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
    16
	poolDictionaries:''
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
    17
	category:'Interface-Smalltalk'
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
    18
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
    19
88
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    20
!NewLauncher class methodsFor:'documentation'!
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    21
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    22
copyright
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    23
"
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    24
 COPYRIGHT (c) 1995 by Claus Gittinger
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    25
	      All Rights Reserved
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    26
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    27
 This software is furnished under a license and may be used
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    28
 only in accordance with the terms of that license and with the
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    29
 inclusion of the above copyright notice.   This software may not
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    30
 be provided or otherwise made available to, or used by, any
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    31
 other person.  No title to or ownership of the software is
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    32
 hereby transferred.
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    33
"
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    34
!
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    35
105
claus
parents: 104
diff changeset
    36
customization
claus
parents: 104
diff changeset
    37
"
claus
parents: 104
diff changeset
    38
    Of course, it is possible to change the NewLauncher class itself
claus
parents: 104
diff changeset
    39
    as appropriate, however, we suggest you create a subclass (say MyLauncher),
claus
parents: 104
diff changeset
    40
    define it as autoloaded in the patches file, and redefined some methods
claus
parents: 104
diff changeset
    41
    there. That way, your changes are easier to reintroduce in case of
claus
parents: 104
diff changeset
    42
    an ST/X upgrade.
claus
parents: 104
diff changeset
    43
claus
parents: 104
diff changeset
    44
claus
parents: 104
diff changeset
    45
    adding more buttons to the button-panel:
claus
parents: 104
diff changeset
    46
claus
parents: 104
diff changeset
    47
      see the method #buttonPanelSpec;
claus
parents: 104
diff changeset
    48
	it defines a list of selectors and icons, which is used by 
claus
parents: 104
diff changeset
    49
	#setupButtonPanelIn:. 
claus
parents: 104
diff changeset
    50
	There, for each entry, a button with that icon is created, 
claus
parents: 104
diff changeset
    51
	which sends a selector-message to the launcher.
claus
parents: 104
diff changeset
    52
claus
parents: 104
diff changeset
    53
	Add entries to that list, and define appropriate methods.
claus
parents: 104
diff changeset
    54
	For example, to add a button which opens a drawTool,
claus
parents: 104
diff changeset
    55
	change #buttonPanelSpec to:
claus
parents: 104
diff changeset
    56
claus
parents: 104
diff changeset
    57
	buttonPanelSpec
claus
parents: 104
diff changeset
    58
	    ^ #(
claus
parents: 104
diff changeset
    59
		#(startSystemBrowser  'SBrowser32x32.xbm')
claus
parents: 104
diff changeset
    60
		#(startFileBrowser    'FBrowser32x32.xbm')
claus
parents: 104
diff changeset
    61
		#(nil nil)
claus
parents: 104
diff changeset
    62
		#(startChangesBrowser 'CBrowser32x32.xbm')
claus
parents: 104
diff changeset
    63
		#(nil nil)
claus
parents: 104
diff changeset
    64
		#(nil nil)
claus
parents: 104
diff changeset
    65
		#(startDrawTool       'DrawTool.xbm')
claus
parents: 104
diff changeset
    66
	     )
claus
parents: 104
diff changeset
    67
claus
parents: 104
diff changeset
    68
	the panel adjusts its height as appropriate - you may want to
claus
parents: 104
diff changeset
    69
	create new (small) icons for a good look.
claus
parents: 104
diff changeset
    70
claus
parents: 104
diff changeset
    71
    adding an entry to a menu:
claus
parents: 104
diff changeset
    72
claus
parents: 104
diff changeset
    73
	see the #setupMenu method; either add another top-menu, or
claus
parents: 104
diff changeset
    74
	add entries to an existing menu.
88
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    75
"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    76
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    77
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    78
documentation
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    79
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    80
    a new launcher, combining old Launchers menu and transcript into
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    81
    one view. (you no longer have to move two views around all the time ...).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    82
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    83
    Also, this app makes first use of the new compatibility framework;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    84
    you will notice, that this is a subclass of ApplicationModel.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    85
    New applications will no longer be built as subclasses of standardSystemView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
    86
"
88
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    87
! !
a38a2e87687b *** empty log message ***
claus
parents: 86
diff changeset
    88
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
    89
!NewLauncher class methodsFor:'defaults'!
11b4ce85104e Initial revision
claus
parents:
diff changeset
    90
11b4ce85104e Initial revision
claus
parents:
diff changeset
    91
aboutIcon
11b4ce85104e Initial revision
claus
parents:
diff changeset
    92
    |image|
11b4ce85104e Initial revision
claus
parents:
diff changeset
    93
11b4ce85104e Initial revision
claus
parents:
diff changeset
    94
    CachedAboutIcon notNil ifTrue:[^ CachedAboutIcon].
11b4ce85104e Initial revision
claus
parents:
diff changeset
    95
11b4ce85104e Initial revision
claus
parents:
diff changeset
    96
    image := Image fromFile:'SmalltalkX.xbm'.
92
claus
parents: 91
diff changeset
    97
    image notNil ifTrue:[
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
    98
	|green dark|
11b4ce85104e Initial revision
claus
parents:
diff changeset
    99
11b4ce85104e Initial revision
claus
parents:
diff changeset
   100
	Display hasColors ifTrue:[
105
claus
parents: 104
diff changeset
   101
	    green := (Color red:0 green:80 blue:20) "darkened".
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
   102
	    dark := Color grey:10.
102
claus
parents: 100
diff changeset
   103
	    image photometric:#palette.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
   104
	] ifFalse:[
100
claus
parents: 99
diff changeset
   105
	    dark := Color black.
claus
parents: 99
diff changeset
   106
	    green := Color white.
102
claus
parents: 100
diff changeset
   107
	    image photometric:#blackIs0.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
   108
	].
102
claus
parents: 100
diff changeset
   109
	image colorMap:(Array with:dark with:green).
144
Claus Gittinger <cg@exept.de>
parents: 142
diff changeset
   110
"/        Display depth > 2 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 142
diff changeset
   111
"/            image := (Image implementorForDepth:Display depth) fromImage:image.
Claus Gittinger <cg@exept.de>
parents: 142
diff changeset
   112
"/        ]
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
   113
    ].
11b4ce85104e Initial revision
claus
parents:
diff changeset
   114
    CachedAboutIcon := image.
11b4ce85104e Initial revision
claus
parents:
diff changeset
   115
    ^ image
11b4ce85104e Initial revision
claus
parents:
diff changeset
   116
11b4ce85104e Initial revision
claus
parents:
diff changeset
   117
    "
92
claus
parents: 91
diff changeset
   118
     CachedAboutIcon := nil.
claus
parents: 91
diff changeset
   119
     NewLauncher aboutIcon
claus
parents: 91
diff changeset
   120
    "
144
Claus Gittinger <cg@exept.de>
parents: 142
diff changeset
   121
Claus Gittinger <cg@exept.de>
parents: 142
diff changeset
   122
    "Modified: 20.10.1995 / 21:54:58 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   123
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   124
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   125
smallAboutIcon
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   126
    |image|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   127
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   128
    image := self aboutIcon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   129
    image notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   130
	image := image magnifiedBy:0.4.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   131
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   132
    ^ image
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   133
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   134
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   135
     CachedAboutIcon := nil.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   136
     NewLauncher aboutIcon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   137
     NewLauncher smallAboutIcon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   138
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   139
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   140
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   141
!NewLauncher methodsFor:'actions - about & help'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   142
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   143
about
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   144
    |box|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   145
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   146
    box := AboutBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   147
    box autoHideAfter:10 with:[].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   148
    box showAtCenter
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   149
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   150
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   151
showDocumentation:aRelativeDocFilePath
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   152
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   153
     although that one is not yet finished,
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   154
     its better than nothing ...
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   155
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   156
    XtHTML notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   157
	"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   158
	 temporary kludge;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   159
	 not all machines can autoload binaries;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   160
	 however, on my SGI (which can) we want it
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   161
	 to load automatically.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   162
	"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   163
	XtHTML isLoaded ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   164
	    (OperatingSystem getSystemType = 'iris') ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   165
		ErrorSignal catch:[XtHTML autoload]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   166
	    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   167
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   168
	XtHTML isLoaded ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   169
	    XtHTML openFullOnDocumentationFile:aRelativeDocFilePath. 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   170
	    ^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   171
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   172
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   173
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   174
    self warn:'Sorry, the ST/X HTML reader is not (yet) 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   175
included in this architectures release.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   176
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   177
Please use Mosaic, netscape, chimera or any
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   178
other HTML viewer to see the documentation.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   179
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   180
The documentation is found in the ''doc/online'' directory.'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   181
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   182
    "Modified: 31.8.1995 / 13:11:08 / claus"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   183
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   184
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   185
startDocumentationTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   186
    self showDocumentation:'TOP.html'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   187
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   188
    "Modified: 31.8.1995 / 13:11:28 / claus"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   189
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   190
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   191
toggleActiveHelp:aBoolean
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   192
    ActiveHelp notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   193
	helpIsOn := aBoolean.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   194
	helpIsOn ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   195
	    ActiveHelp start
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   196
	] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   197
	    ActiveHelp stop
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   198
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   199
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   200
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   201
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   202
!NewLauncher methodsFor:'actions - classes'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   203
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   204
browseImplementors
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   205
    |enterBox|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   206
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   207
    enterBox := EnterBox title:(resources at:'Browse implementors of:') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   208
    enterBox okText:(resources at:'browse').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   209
    enterBox action:[:selectorName |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   210
	|cls|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   211
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   212
	self withWaitCursorDo:[SystemBrowser browseImplementorsOf:selectorName]  
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   213
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   214
    enterBox showAtPointer
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   215
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   216
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   217
browseSenders
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   218
    |enterBox|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   220
    enterBox := EnterBox title:(resources at:'Browse senders of:') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   221
    enterBox okText:(resources at:'browse').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   222
    enterBox action:[:selectorName |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   223
	|cls|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   224
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   225
	self withWaitCursorDo:[SystemBrowser browseAllCallsOn:selectorName]  
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   226
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   227
    enterBox showAtPointer
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   228
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   229
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   230
startChangesBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   231
    self withWaitCursorDo:[ChangesBrowser open]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   232
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   233
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   234
startClassBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   235
    SystemBrowser askThenBrowseClass
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   236
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   237
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   238
startClassHierarchyBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   239
    SystemBrowser askThenBrowseClassHierarchy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   240
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   241
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   242
startClassTreeView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   243
    self withWaitCursorDo:[ClassTreeGraphView open]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   244
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   245
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   246
startFileBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   247
    self withWaitCursorDo:[FileBrowser open]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   248
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   249
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   250
startFullClassBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   251
    SystemBrowser askThenBrowseFullClassProtocol
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   252
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   253
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   254
startSystemBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   255
    self withWaitCursorDo:[SystemBrowser open]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   256
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   257
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   258
startWorkspace
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   259
    Workspace open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   260
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   261
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   262
!NewLauncher methodsFor:'actions - demos'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   263
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   264
openDemo:className
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   265
    (Smalltalk at:className) open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   266
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   267
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   268
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   269
startTetris
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   270
    Tetris open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   271
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   272
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   273
startTicTacToe
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   274
    TicTacToeGame open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   275
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   276
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   277
startTicTacToe2
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   278
    TicTacToeGame open2UserGame
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   279
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   280
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   281
!NewLauncher methodsFor:'actions - file'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   282
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   283
exit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   284
    (self confirm:(resources string:'Are you certain you want to exit without saving ?'))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   285
    ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   286
	self saveAllViews.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   287
	Smalltalk exit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   288
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   289
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   290
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   291
objectModuleDialog
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   292
    |allModules moduleNames
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   293
     allObjects methodObjects methodNames 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   294
     box l unloadButton
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   295
     list1 list2 listView1 listView2
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   296
     y panel showBuiltIn showModules showMethods moduleListUpdater check|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   297
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   298
    showBuiltIn := true asValue. 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   299
    showModules := ObjectFileLoader notNil asValue. 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   300
    showMethods := ObjectFileLoader notNil asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   301
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   302
    moduleListUpdater := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   303
    moduleListUpdater 
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   304
	respondTo:#getModules 
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   305
	with:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   306
	    |l|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   307
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   308
	    l := Array new.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   309
	    (showModules value or:[showBuiltIn value]) ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   310
		allModules := ObjectMemory binaryModuleInfo asOrderedCollection.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   311
		(showBuiltIn value and:[showModules value]) ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   312
		    allModules := allModules select:[:i |
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   313
			|wantToSee|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   314
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   315
			wantToSee := (i at:#dynamic).
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   316
			showBuiltIn value ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   317
			    wantToSee := wantToSee not
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   318
			].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   319
			wantToSee
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   320
		    ]
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   321
		].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   322
		"/ sorting by reverse id brings newest ones to the top (a side effect)
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   323
		allModules sort:[:a :b | (a at:#id) > (b at:#id)].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   324
		moduleNames := allModules collect:[:entry | (entry at:#name)].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   325
		l := l , moduleNames.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   326
	    ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   327
	    showMethods value ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   328
		allObjects := ObjectFileLoader loadedObjectHandles.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   329
		methodObjects := (allObjects select:[:h | h isMethodHandle]) asArray.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   330
		methodNames := methodObjects collect:[:mH | mH method isNil ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   331
								'compiled method - removed' , ' (in ' , mH pathName , ')'
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   332
							    ] ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   333
								'compiled method ' , mH method whoString , ' (in ' , mH pathName , ')'
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   334
							    ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   335
						     ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   336
		l := l , methodNames.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   337
	    ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   338
	    list1 list:l.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   339
	    unloadButton disable.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   340
	].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   341
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   342
    list1 := SelectionInList new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   343
    list2 := SelectionInList new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   344
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   345
    showBuiltIn onChangeSend:#getModules to:moduleListUpdater.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   346
    showModules onChangeSend:#getModules to:moduleListUpdater.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   347
    showMethods onChangeSend:#getModules to:moduleListUpdater.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   348
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   349
    box := Dialog new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   350
    box label:(resources string:'Module dialog').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   351
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   352
    listView1 := HVScrollableView for:SelectionInListView miniScrollerH:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   353
    listView1 model:list1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   354
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   355
    listView1 action:[:sel |
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   356
	|info classNames tabs|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   357
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   358
	(showModules value or:[showBuiltIn value]) ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   359
	    info := allModules at:sel ifAbsent:nil.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   360
	].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   361
	info isNil ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   362
	    "/ selected a method
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   363
	    list2 list:#().
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   364
	    unloadButton enable.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   365
	] ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   366
	    "/ selected a package
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   367
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   368
	    tabs := TabulatorSpecification unit:#inch positions:#(0 2.6).
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   369
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   370
	    "/ fill bottom list with class-info
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   371
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   372
	    classNames := (info at:#classNames) asSortedCollection.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   373
	    classNames := classNames collect:[:cName |
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   374
			    |cls entry rev listEntry|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   375
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   376
			    listEntry := MultiColListEntry new:2 tabulatorSpecification:tabs.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   377
			    listEntry colAt:1 put:cName.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   378
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   379
			    cls := Smalltalk classNamed:cName.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   380
			    cls isNil ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   381
				listEntry colAt:2 put:'(class removed)'.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   382
			    ] ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   383
				rev := cls binaryRevision.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   384
				rev notNil ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   385
				    entry :='(bin: ' , rev.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   386
				    cls revision ~= rev ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   387
					entry := entry , ' / src: ' , cls revision    
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   388
				    ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   389
				    listEntry colAt:2 put:entry , ')'
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   390
				] ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   391
				   cls revision notNil ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   392
					listEntry colAt:2 put:'(overloaded by: ' , cls revision , ')' 
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   393
				   ]
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   394
				]
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   395
			    ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   396
			    listEntry
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   397
			  ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   398
	    list2 list:classNames.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   399
	    (info at:#dynamic) ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   400
		unloadButton enable.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   401
	    ] ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   402
		unloadButton disable.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   403
	    ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   404
	]
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   405
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   406
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   407
    panel := HorizontalPanelView new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   408
245
87fc74d6ea91 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 244
diff changeset
   409
    panel add:(l := Label label:'modules shown:').
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   410
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   411
    panel add:(CheckBox label:'builtin' model:showBuiltIn).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   412
    panel add:(check := CheckBox label:'modules' model:showModules).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   413
    ObjectFileLoader isNil ifTrue:[check disable].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   414
    panel add:(check := CheckBox label:'methods' model:showMethods).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   415
    ObjectFileLoader isNil ifTrue:[check disable].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   416
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   417
    panel horizontalLayout:#fitSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   418
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   419
    box addComponent:panel tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   420
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   421
    box addComponent:listView1 tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   422
    listView1 topInset:(View viewSpacing + panel preferredExtent y).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   423
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   424
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   425
    l := box addTextLabel:(resources string:'contained classes/subsets:').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   426
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   427
    l origin:0.0@0.4 corner:1.0@0.4.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   428
    l topInset:(View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   429
    l bottomInset:((l preferredExtent y) negated - View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   430
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   431
    listView2 := HVScrollableView for:SelectionInListView  miniScrollerH:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   432
    listView2 model:list2; printItems:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   433
    box addComponent:listView2 tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   434
    listView2 origin:0.0@0.4 corner:1.0@1.0. "/ ; inset:2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   435
    listView2 disable.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   436
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   437
    unloadButton := Button label:(resources string:'unload').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   438
    unloadButton action:[
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   439
	self withWaitCursorDo:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   440
	    box withWaitCursorDo:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   441
		|info idx pathName|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   442
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   443
		idx := list1 selectionIndex.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   444
		info := allModules at:idx ifAbsent:nil.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   445
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   446
		info isNil ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   447
		    "/ selected a method
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   448
		    idx := idx - allModules size.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   449
		    pathName := (methodObjects at:idx) pathName.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   450
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   451
		] ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   452
		    "/ selected a package
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   453
		    pathName := (info at:#pathName).
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   454
		].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   455
		ObjectFileLoader unloadObjectFile:pathName.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   456
		moduleListUpdater getModules.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   457
		unloadButton disable.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   458
	    ]
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   459
	]
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   460
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   461
    moduleListUpdater getModules.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   462
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   463
    box addButton:unloadButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   464
    box addAbortButtonLabelled:(resources string:'close').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   465
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   466
    y := box yPosition.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   467
    listView2 topInset:(l preferredExtent y + 5).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   468
    listView2 bottomInset:(box preferredExtent y - y).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   469
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   470
    box width:(350 min:(box device width * 2 // 3)); 
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   471
	height:(450 min:(box device height - 50)); 
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   472
	sizeFixed:true.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   473
    box showAtPointer.
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   474
    box destroy.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   475
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   476
    "Modified: 17.9.1995 / 16:47:50 / claus"
262
29e57d617edd tell the fact that a binary class has been overloaded (via fileIn) in the moduleDialog
Claus Gittinger <cg@exept.de>
parents: 250
diff changeset
   477
    "Modified: 9.12.1995 / 21:08:35 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   478
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   479
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   480
snapshot
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   481
    |saveBox|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   482
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   483
    saveBox := EnterBox title:(resources at:'filename for image:') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   484
    saveBox okText:(resources at:'save').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   485
    saveBox action:[:fileName | 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   486
	(ObjectMemory snapShotOn:fileName) ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   487
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   488
	     snapshot failed for some reason (disk full, no permission etc.)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   489
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   490
	    self warn:(resources string:'failed to save snapshot image (disk full or not writable)').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   491
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   492
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   493
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   494
    saveBox initialText:(ObjectMemory nameForSnapshot).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   495
    saveBox label:'save image'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   496
    saveBox showAtPointer
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   497
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   498
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   499
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   500
snapshotAndExit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   501
    |saveBox|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   502
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   503
    saveBox := EnterBox title:(resources at:'filename for image:') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   504
    saveBox okText:(resources at:'save & exit').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   505
    saveBox action:[:fileName | 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   506
	(ObjectMemory snapShotOn:fileName) ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   507
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   508
	     snapshot failed for some reason (disk full, no permission etc.)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   509
	     Do NOT exit in this case.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   510
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   511
	    self warn:(resources string:'failed to save snapshot image (disk full or not writable)').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   512
	] ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   513
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   514
	     saveAllViews tells all views to shutdown neatly 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   515
	     (i.e. offer a chance to save the contents to a file).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   516
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   517
	     This is NOT required - all data should be in the snapshot ...
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   518
	     ... however, if remote disks/mountable filesystems are involved,
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   519
	     which may not be present the next time, it may make sense to 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   520
	     uncomment it and query for saving - time will show which is better.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   521
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   522
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   523
	    self saveAllViews.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   524
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   525
	    Smalltalk exit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   526
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   527
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   528
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   529
    saveBox initialText:(ObjectMemory nameForSnapshot).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   530
    saveBox label:'save image & exit'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   531
    saveBox showAtPointer
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   532
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   533
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   534
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   535
!NewLauncher methodsFor:'actions - goodies'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   536
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   537
startCalendar
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   538
    Calendar open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   539
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   540
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   541
startClock
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   542
    RoundClock open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   543
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   544
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   545
startMailTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   546
    MailView open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   547
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   548
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   549
startNewsTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   550
    NewsView open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   551
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   552
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   553
!NewLauncher methodsFor:'actions - projects'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   554
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   555
newProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   556
    Project notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   557
	(ProjectView for:(Project new)) open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   558
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   559
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   560
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   561
selectProject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   562
    |list box|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   563
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   564
    Project notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   565
	list := Project allInstances.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   566
	box := ListSelectionBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   567
	box list:(list collect:[:p | p name]).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   568
	box title:(resources string:'select a project').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   569
	box action:[:selection |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   570
	    |project|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   571
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   572
	    project := list detect:[:p | p name = selection] ifNone:[nil].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   573
	    project isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   574
		Transcript showCr:'no such project.'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   575
	    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   576
		project showViews.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   577
		Project current:project
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   578
	    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   579
	].
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   580
	box showAtPointer.
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   581
	box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   582
    ]
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
   583
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
   584
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   585
!NewLauncher methodsFor:'actions - settings'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   586
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   587
compilerSettings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   588
    |box warnings warnSTX warnUnderscore warnOldStyle allowUnderscore immutableArrays
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   589
     warnSTXBox warnUnderscoreBox warnOldStyleBox 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   590
     stcCompilation compilationList stcCompilationOptions stcIncludes stcDefines stcOptions
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   591
     stcLibraries historyLines catchRedefs 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   592
     warnEnabler check y component|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   593
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   594
    warnings := Compiler warnings asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   595
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   596
    warnSTX := Compiler warnSTXSpecials asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   597
    warnUnderscore := Compiler warnUnderscoreInIdentifier asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   598
    warnOldStyle := Compiler warnOldStyleAssignment asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   599
    allowUnderscore := Compiler allowUnderscoreInIdentifier asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   600
    immutableArrays := Compiler arraysAreImmutable asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   601
    stcCompilationOptions := #( always default never).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   602
    stcCompilation := SelectionInList new list:(resources array:#('always' 'primitive code only' 'never')).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   603
    stcCompilation selectionIndex:2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   604
    stcIncludes := Compiler stcCompilationIncludes asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   605
    stcDefines := Compiler stcCompilationDefines asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   606
    stcOptions := Compiler stcCompilationOptions asValue.
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   607
    ObjectFileLoader notNil ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   608
	stcLibraries := (String fromStringCollection:ObjectFileLoader searchedLibraries separatedBy:' ') asValue.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   609
    ].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   610
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   611
    catchRedefs := Class catchMethodRedefinitions asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   612
    historyLines := (HistoryManager notNil and:[HistoryManager isActive]) asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   613
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   614
    warnEnabler := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   615
    warnEnabler
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   616
	respondTo:#check 
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   617
	with:[warnings value ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   618
		warnSTXBox enable. 
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   619
		warnOldStyleBox enable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   620
		allowUnderscore value ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   621
		    warnUnderscoreBox enable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   622
		] ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   623
		    warnUnderscoreBox disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   624
		].
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   625
	      ] ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   626
		warnSTXBox disable. 
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   627
		warnUnderscoreBox disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   628
		warnOldStyleBox disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   629
	      ]].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   630
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   631
    warnings onChangeSend:#check to:warnEnabler.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   632
    allowUnderscore onChangeSend:#check to:warnEnabler.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   633
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   634
    box := DialogBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   635
    box label:(resources string:'Compiler settings').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   636
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   637
    box addCheckBox:(resources string:'catch method redefinitions') on:catchRedefs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   638
    check := box addCheckBox:(resources string:'keep history line in methods') on:historyLines.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   639
    HistoryManager isNil ifTrue:[check disable].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   640
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   641
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   642
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   643
    ObjectFileLoader notNil ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   644
	compilationList := box addPopUpList:(resources string:'compilation to machine code') on:stcCompilation.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   645
	stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:2).
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   646
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   647
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   648
	component := box addTextLabel:(resources string:'stc include directories:').
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   649
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   650
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   651
	component := box addInputFieldOn:stcIncludes tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   652
	component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   653
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   654
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   655
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   656
	component := box addTextLabel:'stc defines:'.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   657
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   658
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   659
	component := box addInputFieldOn:stcDefines tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   660
	component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   661
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   662
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   663
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   664
	component := box addTextLabel:'stc options:'.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   665
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   666
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   667
	component := box addInputFieldOn:stcOptions tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   668
	component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   669
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   670
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   671
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   672
	component := box addTextLabel:'stc C-libraries:'.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   673
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   674
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   675
	component := box addInputFieldOn:stcLibraries tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   676
	component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   677
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   678
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   679
	box addHorizontalLine.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   680
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   681
	"/ if there is no compiler around,
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   682
	"/ change to compile nothing, and disable the checkBoxes
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   683
	Compiler canCreateMachineCode ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   684
	    stcCompilation selectionIndex:3.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   685
	    compilationList disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   686
	].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   687
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   688
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   689
    box addCheckBox:(resources string:'allow underscore in identifiers') on:allowUnderscore.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   690
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   691
    box addCheckBox:(resources string:'literal arrays are immutable') on:immutableArrays.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   692
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   693
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   694
    box addCheckBox:(resources string:'warnings') on:warnings.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   695
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   696
    box leftIndent:30.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   697
    warnSTXBox := box addCheckBox:(resources string:'ST/X language extensions') on:warnSTX.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   698
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   699
    warnUnderscoreBox := box addCheckBox:(resources string:'underscores in identifiers') on:warnUnderscore.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   700
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   701
    warnOldStyleBox := box addCheckBox:(resources string:'oldStyle assignment') on:warnOldStyle.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   702
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   703
    box leftIndent:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   704
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   705
    box addAbortButton; addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   706
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   707
    warnEnabler check.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   708
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   709
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   710
    box accepted ifTrue:[
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   711
	HistoryManager notNil ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   712
	    historyLines value ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   713
		HistoryManager activate
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   714
	    ] ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   715
		HistoryManager deactivate
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   716
	    ].
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   717
	].
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   718
	Class catchMethodRedefinitions:catchRedefs value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   719
	Compiler warnings:warnings value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   720
	Compiler warnSTXSpecials:warnSTX value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   721
	Compiler warnOldStyleAssignment:warnOldStyle value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   722
	Compiler warnUnderscoreInIdentifier:warnUnderscore value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   723
	Compiler allowUnderscoreInIdentifier:allowUnderscore value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   724
	Compiler arraysAreImmutable:immutableArrays value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   725
	Compiler stcCompilation:(stcCompilationOptions at:stcCompilation selectionIndex).
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   726
	Compiler stcCompilationIncludes:stcIncludes value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   727
	Compiler stcCompilationDefines:stcDefines value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   728
	Compiler stcCompilationOptions:stcOptions value.
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   729
	ObjectFileLoader notNil ifTrue:[
233
73a7f0118258 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 232
diff changeset
   730
	    ObjectFileLoader searchedLibraries:(stcLibraries value asCollectionOfWords).
73a7f0118258 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 232
diff changeset
   731
	]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   732
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   733
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   734
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   735
    "Modified: 10.9.1995 / 19:19:18 / claus"
228
5590115a282c no borders in labels
Claus Gittinger <cg@exept.de>
parents: 227
diff changeset
   736
    "Modified: 4.12.1995 / 01:11:23 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   737
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   738
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   739
keyboardSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   740
    |mappings listOfRawKeys listOfFunctions
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   741
     box l
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   742
     list1 list2 listView1 listView2 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   743
     frame selectionForwarder macroForwarder macroTextView y|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   744
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   745
    mappings := Screen current keyboardMap.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   746
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   747
    listOfRawKeys := (mappings keys asArray collect:[:key | key asString]) sort.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   748
    listOfFunctions := (mappings values asSet asArray collect:[:key | key asString]) sort.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   749
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   750
    selectionForwarder := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   751
    selectionForwarder respondTo:#showFunction
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   752
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   753
			|raw|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   754
			raw := list1 selection.
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   755
			list2 retractInterestsFor:selectionForwarder.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   756
			list2 selection:(mappings at:raw asSymbol) asString.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   757
			list2 onChangeSend:#showRawKey to:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   758
		       ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   759
    selectionForwarder respondTo:#showRawKey
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   760
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   761
			|f raw|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   762
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   763
			f := list2 selection.
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   764
			list1 retractInterestsFor:selectionForwarder.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   765
			raw := mappings keyAtValue:f asString.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   766
			raw isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   767
			    raw := mappings keyAtValue:f first.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   768
			    raw isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   769
				raw := mappings keyAtValue:f asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   770
			    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   771
			].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   772
			list1 selection:raw.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   773
			list1 onChangeSend:#showFunction to:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   774
		       ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   775
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   776
    macroForwarder := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   777
    macroForwarder respondTo:#showMacro
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   778
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   779
			|f macro indent|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   780
			f := list2 selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   781
			(f startsWith:'Cmd') ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   782
			    f := f copyFrom:4
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   783
			].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   784
			macro := FunctionKeySequences at:(f asSymbol) ifAbsent:nil.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   785
			macro notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   786
			    macro := macro asStringCollection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   787
			    indent := macro
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   788
					 inject:99999 into:[:min :element |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   789
					     |stripped|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   790
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   791
					     stripped := element withoutLeadingSeparators.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   792
					     stripped size == 0 ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   793
						 min
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   794
					     ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   795
						 min min:(element size - stripped size)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   796
					     ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   797
					 ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   798
			    indent ~~ 0 ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   799
				macro := macro collect:[:line | 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   800
					     line size > indent ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   801
						line copyFrom:indent+1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   802
					     ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   803
						line
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   804
					     ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   805
					]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   806
			    ].                        
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   807
			].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   808
			macroTextView contents:macro.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   809
		       ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   810
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   811
    list1 := SelectionInList with:listOfRawKeys.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   812
    list1 onChangeSend:#showFunction to:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   813
    list2 := SelectionInList with:listOfFunctions.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   814
    list2 onChangeSend:#showRawKey to:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   815
    list2 onChangeSend:#showMacro to:macroForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   816
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   817
    box := Dialog new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   818
    box label:(resources string:'Keyboard mappings').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   819
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   820
    l := box addTextLabel:(resources string:'KEY_MSG') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   821
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   822
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   823
    frame := View new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   824
    frame extent:300 @ 300.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   825
    frame borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   826
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   827
    listView1 := ScrollableView for:SelectionInListView in:frame.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   828
    listView1 model:list1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   829
    listView1 origin:0.0@0.0 corner:0.5@1.0; inset:2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   830
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   831
    listView2 := ScrollableView for:SelectionInListView in:frame.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   832
    listView2 model:list2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   833
    listView2 origin:0.5@0.0 corner:1.0@1.0; inset:2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   834
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   835
    frame topInset:box yPosition.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   836
    box addComponent:frame withExtent:350@200.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   837
    box makeTabable:listView1. 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   838
    box makeTabable:listView2. 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   839
    frame origin:0.0@0.0 corner:1.0@0.6.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   840
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   841
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   842
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   843
    l := box addTextLabel:(resources string:'Macro text (if any):') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   844
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   845
    l origin:0.0@0.6 corner:1.0@0.6.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   846
    l topInset:(View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   847
    l bottomInset:(l preferredExtent y negated - View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   848
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   849
    macroTextView := HVScrollableView for:TextView miniScroller:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   850
    box addComponent:macroTextView tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   851
    macroTextView origin:0.0@0.6 corner:1.0@1.0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   852
    y := box yPosition.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   853
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   854
    box "addAbortButton;" addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   855
    macroTextView topInset:(l preferredExtent y + 5).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   856
    macroTextView bottomInset:(box preferredExtent y - y).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   857
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   858
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   859
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   860
    box accepted ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   861
	"no action yet ..."
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   862
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   863
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   864
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   865
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   866
languageSetting 
281
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   867
    |listOfLanguages translatedLanguages idx language  box|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   868
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   869
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   870
     hardwiring here is stupid - need a resource file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   871
     which lists languagenames which have all texts available
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   872
     in resource files ...
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   873
    "
281
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   874
    listOfLanguages := resources at:'LIST_OF_OFFERED_LANGUAGES'.
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   875
    translatedLanguages := resources array:listOfLanguages.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   876
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   877
    box := ListSelectionBox title:(resources string:'LANG_MSG') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   878
    box label:(resources string:'Language selection').
281
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   879
    box list:translatedLanguages.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   880
    box initialText:(Language).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   881
    box action:[:newLanguage |
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   882
	self withWaitCursorDo:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   883
	    Transcript showCr:'change language to ' , newLanguage , ' ...'.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   884
	    idx := translatedLanguages indexOf:newLanguage withoutSeparators.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   885
	    idx ~~ 0 ifTrue:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   886
		language := listOfLanguages at:idx
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   887
	    ] ifFalse:[
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   888
		language := newLanguage
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   889
	    ].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   890
	    Smalltalk at:#Language put:language asSymbol.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   891
	    Smalltalk changed:#Language.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   892
	    ResourcePack flushCachedResourcePacks
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   893
	].
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
   894
	self reopenLauncher.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   895
    ].    
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   896
    box showAtPointer.
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   897
    box destroy
281
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   898
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   899
    "Modified: 12.12.1995 / 17:53:52 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   900
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   901
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   902
messageSettings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   903
    |box vmInfo vmErrors displayErrors classInfos|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   904
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   905
    vmInfo := ObjectMemory infoPrinting asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   906
    vmErrors := ObjectMemory debugPrinting asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   907
    classInfos := Object infoPrinting asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   908
    displayErrors := DeviceWorkstation errorPrinting asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   909
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   910
    box := DialogBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   911
    box label:(resources string:'Messages').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   912
"/    box extent:200@300.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   913
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   914
    box addCheckBox:(resources string:'VM info messages') on:vmInfo.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   915
    box addCheckBox:(resources string:'VM error messages') on:vmErrors.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   916
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   917
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   918
    box addCheckBox:(resources string:'Display error messages (Xlib, Xtlib ...)') on:displayErrors.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   919
    box addCheckBox:(resources string:'Other info messages') on:classInfos.
99
claus
parents: 98
diff changeset
   920
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   921
    box addAbortButton; addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   922
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   923
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   924
    box accepted ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   925
	ObjectMemory infoPrinting:vmInfo value.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   926
	ObjectMemory debugPrinting:vmErrors value.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   927
	Object infoPrinting:classInfos value.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   928
	DeviceWorkstation errorPrinting:displayErrors value.
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   929
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   930
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   931
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   932
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   933
miscSettings
327
44a25cae2645 allow setting of dialog-focus behavior
ca
parents: 319
diff changeset
   934
    |box check logDoits shadows updChanges changeFileName returnFocus
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   935
     loadBinaries compileLazy hostNameInLabel useManager localSourceFirst 
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   936
     y component localCheck|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   937
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   938
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   939
    "/ extract relevant system settings ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   940
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   941
    logDoits := Smalltalk logDoits asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   942
    shadows := PopUpView shadows asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   943
    hostNameInLabel := StandardSystemView includeHostNameInLabel asValue.
327
44a25cae2645 allow setting of dialog-focus behavior
ca
parents: 319
diff changeset
   944
    returnFocus := Dialog returnFocusWhenClosingModalBoxes asValue.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   945
    updChanges := Class updatingChanges asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   946
    changeFileName := ObjectMemory nameForChanges asValue.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   947
    useManager := (Smalltalk at:#SourceCodeManager) notNil asValue.
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   948
    localSourceFirst := Class tryLocalSourceFirst asValue.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   949
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   950
    loadBinaries := Smalltalk loadBinaries asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   951
    compileLazy := Autoload compileLazy asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   952
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   953
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   954
    "/ create a box on those values ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   955
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   956
    box := DialogBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   957
    box label:(resources string:'Other settings').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   958
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   959
    box addCheckBox:(resources string:'log compiles in changes file') on:updChanges.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   960
    box addCheckBox:(resources string:'log doIts in changes file') on:logDoits.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   961
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   962
    y := box yPosition.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   963
    component := box addTextLabel:(resources string:'change file name:').
228
5590115a282c no borders in labels
Claus Gittinger <cg@exept.de>
parents: 227
diff changeset
   964
    component width:0.5; adjust:#right; borderWidth:0.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   965
    box yPosition:y.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   966
    component := box addInputFieldOn:changeFileName tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   967
    component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   968
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   969
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   970
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   971
    box addCheckBox:(resources string:'lazy compilation when autoloading') on:compileLazy.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   972
    check := box addCheckBox:(resources string:'if present, load binary objects when autoloading') on:loadBinaries.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   973
    ObjectFileLoader isNil ifTrue:[
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   974
	loadBinaries value:false.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   975
	check disable
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   976
    ].
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   977
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   978
    check := box addCheckBox:(resources string:'sourcecode from sourcecode management') on:useManager.
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   979
    box leftIndent:30.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   980
    localCheck := box addCheckBox:(resources string:'if present, use local source (suppress checkout)') on:localSourceFirst.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   981
    box leftIndent:0.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   982
    localCheck enableChannel:useManager.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   983
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   984
    (AbstractSourceCodeManager isNil 
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   985
    or:[AbstractSourceCodeManager defaultManager isNil]) ifTrue:[
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   986
	useManager value:false.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   987
	check disable.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   988
	localCheck value:true.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   989
"/        localCheck disable
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   990
    ].
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
   991
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   992
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   993
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   994
    box addCheckBox:(resources string:'shadows under popup views') on:shadows.
327
44a25cae2645 allow setting of dialog-focus behavior
ca
parents: 319
diff changeset
   995
    box addCheckBox:(resources string:'boxes return focus to previously active view') on:returnFocus.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   996
    box addCheckBox:(resources string:'hostname in window labels') on:hostNameInLabel.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   997
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   998
    box addAbortButton; addOkButton.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   999
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
  1000
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
  1001
    "/ show the box ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
  1002
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1003
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1004
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
  1005
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
  1006
    "/ update system settings
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
  1007
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1008
    box accepted ifTrue:[
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1009
	Smalltalk logDoits:logDoits value.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1010
	PopUpView shadows:shadows value.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1011
	Class updateChanges:updChanges value.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1012
	Autoload compileLazy:compileLazy value.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1013
	Smalltalk loadBinaries:loadBinaries value.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1014
	StandardSystemView includeHostNameInLabel:hostNameInLabel value.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1015
	ObjectMemory nameForChanges:changeFileName value.
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1016
	Dialog returnFocusWhenClosingModalBoxes:returnFocus value.
327
44a25cae2645 allow setting of dialog-focus behavior
ca
parents: 319
diff changeset
  1017
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1018
	useManager value ifTrue:[
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1019
	    (Smalltalk at:#SourceCodeManager) isNil ifTrue:[
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1020
		Smalltalk at:#SourceCodeManager put:(AbstractSourceCodeManager defaultManager)
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1021
	    ].
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1022
	    Class tryLocalSourceFirst:(localSourceFirst value).
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1023
	] ifFalse:[
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1024
	    Smalltalk at:#SourceCodeManager put:nil
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1025
	]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1026
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1027
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1028
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1029
    "Modified: 24.1.1996 / 20:19:14 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1030
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1031
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1032
viewStyleSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1033
    |listOfStyles resourceDir dir box 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1034
     list listView infoLabel infoForwarder newStyle|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1035
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1036
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1037
     search resources directory for a list of .style files ...
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1038
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1039
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1040
    resourceDir := Smalltalk getSystemFileName:'resources'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1041
    resourceDir isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1042
	self warn:'no styles found (missing ''resources'' directory)'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1043
	^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1044
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1045
    dir := FileDirectory directoryNamed:resourceDir.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1046
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1047
    listOfStyles := dir select:[:aFileName | aFileName endsWith:'.style'].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1048
    listOfStyles := listOfStyles collect:[:aFileName | aFileName copyWithoutLast:6].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1049
    listOfStyles sort.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1050
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1051
"/ old code: used a standard ListSelectionBox
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1052
"/ changed to intercept selection and add info-output.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1053
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1054
"/    box := ListSelectionBox title:(resources string:'STYLE_MSG') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1055
"/    box label:(resources string:'Style selection').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1056
"/    box list:listOfStyles.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1057
"/    box initialText:View defaultStyle.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1058
"/    box selectAction:[:newStyle |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1059
"/    ].    
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1060
"/    box action:[:newStyle |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1061
"/        transcript topView withCursor:Cursor wait do:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1062
"/            Transcript showCr:'change style to ' , newStyle , ' ...'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1063
"/            View defaultStyle:newStyle asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1064
"/        ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1065
"/    ].    
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1066
"/    box showAtPointer
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1067
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1068
"/ new code: build box 'by 'hand'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1069
"/
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1070
    infoForwarder := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1071
    infoForwarder respondTo:#showInfo
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1072
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1073
			|nm sheet comment|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1074
			nm := list selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1075
			sheet := ViewStyle fromFile:(nm , '.style').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1076
			comment := sheet at:#comment ifAbsent:''.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1077
			infoLabel label:comment withCRs asStringCollection
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1078
		       ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1079
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1080
    list := SelectionInList with:listOfStyles.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1081
    list onChangeSend:#showInfo to:infoForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1082
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1083
    box := Dialog new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1084
    box label:(resources string:'Style selection').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1085
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1086
    (box addTextLabel:(resources string:'STYLE_MSG') withCRs) borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1087
    listView := SelectionInListView on:list.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1088
    listView doubleClickAction:[:sel | box accept value:true. box hide].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1089
    listView height:200.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1090
    box addComponent:(ScrollableView forView:listView) tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1091
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1092
227
4c0d12e2a3dc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 226
diff changeset
  1093
    (infoLabel := box addTextLabel:'\\' withCRs) adjust:#centerLeft; borderWidth:0.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1094
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1095
    box addAbortButton; addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1096
    list selection:(View defaultStyle).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1097
    box extent:(box preferredExtent).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1098
    box minExtent:box extent.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1099
    box maxExtent:box extent.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1100
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1101
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1102
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1103
    box accepted ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1104
	newStyle := list selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1105
	newStyle notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1106
	    self withWaitCursorDo:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1107
		Transcript showCr:'change style to ' , newStyle , ' ...'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1108
		View defaultStyle:newStyle asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1109
	    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1110
	    self reopenLauncher.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1111
	]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1112
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1113
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1114
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1115
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1116
!NewLauncher methodsFor:'actions - tools'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1117
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1118
fullScreenHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1119
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1120
     save the contents of the whole screen."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1121
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1122
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1123
	self saveScreenImage:(Image fromScreen) defaultName:'screen'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1124
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1125
!
99
claus
parents: 98
diff changeset
  1126
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1127
removeAllBreakAndTracePoints
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1128
    MessageTracer cleanup
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1129
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1130
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1131
screenHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1132
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1133
     let user specify a rectangular area on the screen
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1134
     and save its contents."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1135
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1136
    |area|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1137
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1138
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1139
	area := Rectangle fromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1140
	(area width > 0 and:[area height > 0]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1141
	    self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1142
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1143
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1144
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1145
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1146
startEventMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1147
    EventMonitor open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1148
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1149
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1150
startFullWindowTreeView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1151
    WindowTreeView open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1152
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1153
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1154
startMemoryMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1155
    MemoryMonitor open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1156
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1157
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1158
startMemoryUsageView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1159
    MemoryUsageView open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1160
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1161
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1162
startProcessMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1163
    ProcessMonitor open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1164
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1165
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1166
startWindowTreeView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1167
    |v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1168
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1169
    v := self pickAView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1170
    v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1171
	WindowTreeView openOn:v topView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1172
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1173
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1174
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1175
viewDestroy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1176
    "let user pick a view and destroy it.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1177
     Even allow destroying non-smalltalk views
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1178
     (also for views which I forgot due to some error)"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1179
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1180
    |device p v id|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1181
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1182
    (Delay forSeconds:1) wait.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1183
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1184
    device := Screen current.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1185
    p :=  device pointFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1186
    id := device viewIdFromPoint:p.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1187
    v := device viewFromId:id.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1188
    v notNil ifTrue:[
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
  1189
	v topView destroy.
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
  1190
	^ self
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1191
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1192
    id = device rootView id ifTrue:[
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
  1193
	^ self
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1194
    ].
298
d1212fc486b9 message string changed
Claus Gittinger <cg@exept.de>
parents: 281
diff changeset
  1195
    (Dialog confirm:'mhmh, this may not a be smalltalk view\(Or I somehow forgot about it).\Destroy anyway ?' withCRs)
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1196
    ifTrue:[
304
49dc8c0e733e interest is written with one 'r' (shame on me)
Claus Gittinger <cg@exept.de>
parents: 298
diff changeset
  1197
	device destroyView:nil withId:id
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1198
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1199
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1200
    "Modified: 18.9.1995 / 23:13:32 / claus"
298
d1212fc486b9 message string changed
Claus Gittinger <cg@exept.de>
parents: 281
diff changeset
  1201
    "Modified: 14.12.1995 / 22:02:26 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1202
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1203
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1204
viewHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1205
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1206
     let user specify a view and save its contents."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1207
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1208
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1209
	|v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1210
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1211
	v := Screen current viewFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1212
	v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1213
	    self saveScreenImage:(Image fromView:(v topView)) defaultName:'hardcopy'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1214
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1215
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1216
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1217
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1218
viewInspect
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1219
    "let user pick a view and inspect it. Only smalltalk views are allowed"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1220
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1221
    |v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1222
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1223
    v := self pickAView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1224
    v notNil ifTrue:[
226
4b050498fe46 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 219
diff changeset
  1225
"/        v topView inspect
4b050498fe46 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 219
diff changeset
  1226
	v inspect
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1227
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1228
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1229
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1230
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1231
!NewLauncher methodsFor:'change & update'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1232
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1233
update:something with:aParameter from:changedObject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1234
    ((something == #currentProject)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1235
    or:[changedObject == Project]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1236
	self changed:#info.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1237
	^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1238
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1239
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1240
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1241
!NewLauncher methodsFor:'help'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1242
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1243
helpTextFor:aComponent
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1244
    |sel s|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1245
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1246
    aComponent == transcript ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1247
	s := 'TRANSCRIPT_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1248
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1249
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1250
    aComponent == infoView ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1251
	s := 'INFOVIEW_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1252
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1253
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1254
    (buttonPanel subViews includes:aComponent) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1255
	"kludge: look for its change selector"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1256
	sel := aComponent changeMessage.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1257
	sel == #startSystemBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1258
	    s := 'SBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1259
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1260
	sel == #startFileBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1261
	    s := 'FBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1262
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1263
	sel == #startChangesBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1264
	    s := 'CBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1265
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1266
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1267
    s notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1268
	^ resources string:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1269
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1270
    ^ nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1271
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1272
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1273
!NewLauncher methodsFor:'infoview update'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1274
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1275
info
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1276
    |project projectName projectDir packageName|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1277
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1278
    (Project isNil or:[(project := Project current) isNil]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1279
	projectName := '* none *'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1280
	projectDir := '.'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1281
	packageName := '* none *'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1282
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1283
	projectName := project name.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1284
	projectDir := project directory.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1285
	packageName := project packageName.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1286
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1287
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1288
    ^ resources
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1289
	string:'project: ''%1''  fileOut to: ''%3''  package: ''%2'''
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1290
	  withArgs:(Array 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1291
			with:projectName
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1292
			with:packageName 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1293
			with:(projectDir contractTo:30))
319
a39350103cb2 forward activity notifications to Transcript
Claus Gittinger <cg@exept.de>
parents: 304
diff changeset
  1294
!
a39350103cb2 forward activity notifications to Transcript
Claus Gittinger <cg@exept.de>
parents: 304
diff changeset
  1295
a39350103cb2 forward activity notifications to Transcript
Claus Gittinger <cg@exept.de>
parents: 304
diff changeset
  1296
showActivity:someMessage
a39350103cb2 forward activity notifications to Transcript
Claus Gittinger <cg@exept.de>
parents: 304
diff changeset
  1297
    Transcript showCr:someMessage; endEntry
a39350103cb2 forward activity notifications to Transcript
Claus Gittinger <cg@exept.de>
parents: 304
diff changeset
  1298
a39350103cb2 forward activity notifications to Transcript
Claus Gittinger <cg@exept.de>
parents: 304
diff changeset
  1299
    "Created: 23.12.1995 / 12:38:29 / cg"
a39350103cb2 forward activity notifications to Transcript
Claus Gittinger <cg@exept.de>
parents: 304
diff changeset
  1300
    "Modified: 23.12.1995 / 12:40:19 / cg"
99
claus
parents: 98
diff changeset
  1301
! !
claus
parents: 98
diff changeset
  1302
93
claus
parents: 92
diff changeset
  1303
!NewLauncher methodsFor:'initialize / release'!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1304
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1305
addTopViewsToCurrentProject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1306
    "ignored here - the launcher is always global (i.e. not project private)."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1307
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1308
    ^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1309
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1310
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1311
buttonPanelSpec
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1312
    "return a spec for the buttons in the panel;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1313
     entries consists of selector and bitmap-filename.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1314
     nil selectors are taken as separators (see setupButtonPanel)"
98
claus
parents: 96
diff changeset
  1315
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1316
    ^ #(
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1317
	#(startSystemBrowser 'SBrowser32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1318
	#(startFileBrowser   'FBrowser32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1319
"/        #(startWorkspace      'Workspace32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1320
	#(nil nil)
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1321
	#(startChangesBrowser 'CBrowser32x32.xbm')
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1322
"/        #(nil nil)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1323
"/        #(nil nil)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1324
"/        #(startDocumentationTool 'book11.ico')
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1325
     )
230
6be247b9d815 workspace button
Claus Gittinger <cg@exept.de>
parents: 228
diff changeset
  1326
6be247b9d815 workspace button
Claus Gittinger <cg@exept.de>
parents: 228
diff changeset
  1327
    "Created: 4.12.1995 / 20:16:18 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1328
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1329
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1330
closeRequest
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1331
    (self confirm:(resources string:'really close %1 ?' with:self class name)) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1332
	super closeRequest
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1333
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1334
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1335
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1336
focusSequence
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1337
    ^ (Array with:myMenu) 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1338
      , 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1339
      (buttonPanel subViews select:[:element | element isKindOf:Button])
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1340
"/      , (Array with:Transcript)
98
claus
parents: 96
diff changeset
  1341
!
claus
parents: 96
diff changeset
  1342
93
claus
parents: 92
diff changeset
  1343
openInterface
98
claus
parents: 96
diff changeset
  1344
    "sent by my superclass to open up my interface"
93
claus
parents: 92
diff changeset
  1345
claus
parents: 92
diff changeset
  1346
    |top icn w|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1347
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1348
    top := StandardSystemView new.
205
e3952eceab14 set iconLabel
Claus Gittinger <cg@exept.de>
parents: 192
diff changeset
  1349
    top label:'Smalltalk/X'; iconLabel:'ST/X Launcher'.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1350
    top extent:(400@300 ).
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1351
92
claus
parents: 91
diff changeset
  1352
    "
claus
parents: 91
diff changeset
  1353
     temporary kludge for SGI;
claus
parents: 91
diff changeset
  1354
     this will be moved into StandardSystemView and be done
claus
parents: 91
diff changeset
  1355
     automatically soon ...
claus
parents: 91
diff changeset
  1356
    "
106
claus
parents: 105
diff changeset
  1357
    Screen current serverVendor = 'Silicon Graphics' ifTrue:[
93
claus
parents: 92
diff changeset
  1358
	icn := self class aboutIcon.
92
claus
parents: 91
diff changeset
  1359
	icn notNil ifTrue:[
93
claus
parents: 92
diff changeset
  1360
	    icn := icn magnifiedTo:86@68.
92
claus
parents: 91
diff changeset
  1361
	    w := View extent:86@68. "/ icn extent.
claus
parents: 91
diff changeset
  1362
	    w viewBackground:icn.
claus
parents: 91
diff changeset
  1363
	    top iconView:w
claus
parents: 91
diff changeset
  1364
	]
claus
parents: 91
diff changeset
  1365
    ].
claus
parents: 91
diff changeset
  1366
93
claus
parents: 92
diff changeset
  1367
    self setupViewsIn:top.
98
claus
parents: 96
diff changeset
  1368
claus
parents: 96
diff changeset
  1369
    top application:self.   
claus
parents: 96
diff changeset
  1370
    builder window:top.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1371
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1372
    "
92
claus
parents: 91
diff changeset
  1373
     open with higher prio to allow interaction even while things
claus
parents: 91
diff changeset
  1374
     are running ...
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1375
    "
92
claus
parents: 91
diff changeset
  1376
    top openWithPriority:(Processor userSchedulingPriority + 1).
93
claus
parents: 92
diff changeset
  1377
!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1378
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1379
release
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1380
    infoProcess notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1381
	infoProcess terminate.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1382
	infoProcess := nil.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1383
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1384
    super release
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1385
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1386
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1387
restarted
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1388
    "image restart - since WindowGroup recreates the process with
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1389
     default prio, we have to raise the prio again.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1390
     Mhmh - this looks like a bug to me ..."
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1391
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1392
    Processor activeProcess priority:(Processor userSchedulingPriority + 1).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1393
    super restarted
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1394
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1395
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1396
saveAndTerminate
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1397
    "
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1398
     some windowManagers can send this, to shutDown an application
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1399
     but let it save its state before, for restart. We are already
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1400
     prepared for this ;-)"
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1401
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1402
    self snapshot.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1403
    super saveAndTerminate
103
claus
parents: 102
diff changeset
  1404
!
claus
parents: 102
diff changeset
  1405
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1406
setupButtonPanelIn:aTopView
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1407
    "create the buttonPanel"
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1408
107
claus
parents: 106
diff changeset
  1409
    |spc mh|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1410
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1411
    spc := View viewSpacing // 2.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1412
    buttonPanel := HorizontalPanelView in:aTopView.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1413
    buttonPanel level:-1; borderWidth:0.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1414
    buttonPanel horizontalLayout:#leftSpace.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1415
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1416
    self buttonPanelSpec do:[:entry |
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1417
	|sel b sep|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1418
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1419
	sel := entry at:1.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1420
	sel isNil ifTrue:[
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1421
	    sep := View in:buttonPanel.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1422
	    sep extent:32@1; borderWidth:0.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1423
	] ifFalse:[
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1424
	    b := Button in:buttonPanel.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1425
	    b form:(Image fromFile:(entry at:2)).
100
claus
parents: 99
diff changeset
  1426
	    b model:self; changeMessage:sel
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1427
	]
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1428
    ].
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1429
100
claus
parents: 99
diff changeset
  1430
    mh := myMenu height.
claus
parents: 99
diff changeset
  1431
    buttonPanel origin:0.0 @ (mh + spc)
105
claus
parents: 104
diff changeset
  1432
		corner:(1.0 @ (mh + spc + buttonPanel preferredExtent y)).
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1433
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1434
    buttonPanel leftInset:spc; rightInset:spc.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1435
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1436
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1437
setupDemoMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1438
    "setup the demo pulldown menu"
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1439
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1440
    |m|
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1441
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1442
    myMenu at:#demos 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1443
	   putLabels:(resources array:#(
91
claus
parents: 90
diff changeset
  1444
					'goodies'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1445
					'games'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1446
					'geometric designs'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1447
					'simple animations'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1448
					'3D graphics'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1449
					'graphic editors'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1450
				       ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1451
	   selectors:#(
91
claus
parents: 90
diff changeset
  1452
					goodies
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1453
					games
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1454
					geometricDesigns
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1455
					simpleAnimations
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1456
					#'3Dgraphics'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1457
					#graphicEditors
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1458
		      )
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1459
	   receiver:self.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1460
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1461
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1462
     only to show two different ways of defining a popUpMenu,
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1463
     we use labels:selectors:receiver: here:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1464
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1465
    m := myMenu menuAt:#demos.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1466
    m subMenuAt:#games
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1467
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1468
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1469
					   'Tetris'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1470
					   'Tic Tac Toe'
142
claus
parents: 140
diff changeset
  1471
					   'Tic Tac Toe (2 players)'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1472
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1473
		selectors:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1474
					   startTetris
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1475
					   startTicTacToe
142
claus
parents: 140
diff changeset
  1476
					   startTicTacToe2
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1477
			   )
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1478
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1479
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1480
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1481
     and labels:selector:args:receiver: here:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1482
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1483
    m subMenuAt:#geometricDesigns
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1484
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1485
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1486
					   'Pen demo'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1487
					   'Commander demo'
116
claus
parents: 115
diff changeset
  1488
					   '-'     
115
claus
parents: 113
diff changeset
  1489
					   'Fractal plants demo'
116
claus
parents: 115
diff changeset
  1490
					   'Fractal patterns demo'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1491
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1492
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1493
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1494
					   PenDemo
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1495
					   CommanderDemo
116
claus
parents: 115
diff changeset
  1496
					   nil
115
claus
parents: 113
diff changeset
  1497
					   FractalPlantsDemo
116
claus
parents: 115
diff changeset
  1498
					   FractalPatternsDemo
91
claus
parents: 90
diff changeset
  1499
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1500
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1501
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1502
    m subMenuAt:#simpleAnimations 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1503
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1504
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1505
					   'Animation'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1506
					   'Globe demo'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1507
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1508
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1509
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1510
					   Animation
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1511
					   GlobeDemo
91
claus
parents: 90
diff changeset
  1512
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1513
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1514
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1515
    m subMenuAt:#'3Dgraphics' 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1516
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1517
		labels:(resources 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1518
			    array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1519
				'plane'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1520
				'tetra'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1521
				'cube (wireframe)'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1522
				'cube (solid)'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1523
				'sphere (wireframe)'
140
claus
parents: 136
diff changeset
  1524
				'doughnut (wireframe)'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1525
				'planet'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1526
				'teapot'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1527
				'logo'
108
claus
parents: 107
diff changeset
  1528
				'x/y graph'
140
claus
parents: 136
diff changeset
  1529
				'-'
claus
parents: 136
diff changeset
  1530
				'cube (light)'
claus
parents: 136
diff changeset
  1531
				'cube (light & texture)'
claus
parents: 136
diff changeset
  1532
				'sphere (light)'
190
a6278b31de11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 185
diff changeset
  1533
				'colored octahedron'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1534
			     ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1535
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1536
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1537
				GLPlaneDemoView2
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1538
				GLTetraDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1539
				GLWireCubeDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1540
				GLCubeDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1541
				GLWireSphereDemoView
140
claus
parents: 136
diff changeset
  1542
				GLDoughnutDemoView
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1543
				GLPlanetDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1544
				GLTeapotDemo
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1545
				Logo3DView1
108
claus
parents: 107
diff changeset
  1546
				GLXYGraph
140
claus
parents: 136
diff changeset
  1547
				nil
claus
parents: 136
diff changeset
  1548
				GLCubeDemoView2
claus
parents: 136
diff changeset
  1549
				GLBrickCubeDemoView
claus
parents: 136
diff changeset
  1550
				GLSphereDemoView2
claus
parents: 136
diff changeset
  1551
				GLOctaHedronDemoView
91
claus
parents: 90
diff changeset
  1552
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1553
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1554
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1555
    m subMenuAt:#graphicEditors 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1556
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1557
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1558
					   'DrawTool'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1559
					   'LogicTool'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1560
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1561
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1562
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1563
					   DrawTool
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1564
					   LogicTool
91
claus
parents: 90
diff changeset
  1565
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1566
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1567
91
claus
parents: 90
diff changeset
  1568
    m subMenuAt:#goodies 
claus
parents: 90
diff changeset
  1569
      put:(PopUpMenu
claus
parents: 90
diff changeset
  1570
		labels:(resources array:#(
claus
parents: 90
diff changeset
  1571
					'clock'
claus
parents: 90
diff changeset
  1572
					'calendar'
claus
parents: 90
diff changeset
  1573
					'-'
claus
parents: 90
diff changeset
  1574
					'mail tool'
claus
parents: 90
diff changeset
  1575
					'news tool'
claus
parents: 90
diff changeset
  1576
					))
claus
parents: 90
diff changeset
  1577
		selector:#openDemo:
claus
parents: 90
diff changeset
  1578
		args:#(
claus
parents: 90
diff changeset
  1579
					Clock 
claus
parents: 90
diff changeset
  1580
					Calendar 
claus
parents: 90
diff changeset
  1581
					nil
claus
parents: 90
diff changeset
  1582
					MailView 
claus
parents: 90
diff changeset
  1583
					NewsView
claus
parents: 90
diff changeset
  1584
		      )
claus
parents: 90
diff changeset
  1585
		receiver:self).
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1586
!
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1587
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1588
setupInfoViewIn:topView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1589
    |spc halfSpc|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1590
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1591
    spc := View viewSpacing.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1592
    infoView := Label label:'' in:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1593
    infoView adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1594
    infoView level:-1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1595
    transcript superView bottomInset:(infoView height + spc).
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1596
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1597
    infoView is3D ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1598
	halfSpc := spc // 2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1599
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1600
	halfSpc := 0
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1601
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1602
    infoView topInset:(infoView height negated - spc + transcript borderWidth);
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1603
	     bottomInset:halfSpc;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1604
	     leftInset:halfSpc; 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1605
	     rightInset:halfSpc.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1606
    infoView origin:0.0 @ 1.0 corner:1.0 @ 1.0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1607
    infoView model:self; aspect:#info; labelMessage:#info.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1608
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1609
    Project notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1610
	Project addDependent:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1611
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1612
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1613
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1614
     NewLauncher open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1615
    "
93
claus
parents: 92
diff changeset
  1616
!
claus
parents: 92
diff changeset
  1617
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1618
setupMenu
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1619
    "setup the pulldown menu"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1620
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1621
    |l s icon|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1622
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1623
    myMenu labels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1624
				     'about'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1625
				     'file'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1626
				     'classes'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1627
				     'tools'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1628
				     'projects'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1629
				     'settings'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1630
				     'demos'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1631
				     'help')).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1632
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1633
     if there is a bitmap, change 'about' to the ST/X icon
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1634
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1635
    icon := self class smallAboutIcon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1636
    icon notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1637
	myMenu labels at:1 put:icon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1638
	myMenu height:(myMenu height max:(icon height + (View viewSpacing * 2)))
93
claus
parents: 92
diff changeset
  1639
    ].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1640
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1641
    myMenu selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1642
				     #about
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1643
				     #file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1644
				     #classes 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1645
				     #tools 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1646
				     #projects 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1647
				     #settings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1648
				     #demos
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1649
				     #help).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1650
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1651
    myMenu at:#about 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1652
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1653
					'about Smalltalk/X ...'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1654
				       ))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1655
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1656
					#about 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1657
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1658
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1659
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1660
    l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1661
		'file browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1662
		'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1663
		'modules'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1664
		'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1665
		'snapshot'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1666
		'snapshot & exit'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1667
		'exit smalltalk'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1668
	 ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1669
    s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1670
		#startFileBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1671
		nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1672
		#objectModuleDialog 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1673
		nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1674
		#snapshot
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1675
		#snapshotAndExit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1676
		#exit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1677
	 ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1678
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1679
    myMenu at:#file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1680
	   putLabels:(resources array:l)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1681
	   selectors:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1682
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1683
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1684
    myMenu at:#classes 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1685
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1686
					'system browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1687
					'class browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1688
					'full class browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1689
					'class hierarchy browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1690
					'class tree'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1691
					'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1692
					'implementors'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1693
					'senders'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1694
					'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1695
					'change browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1696
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1697
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1698
					#startSystemBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1699
					#startClassBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1700
					#startFullClassBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1701
					#startClassHierarchyBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1702
					#startClassTreeView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1703
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1704
					#browseImplementors 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1705
					#browseSenders 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1706
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1707
					#startChangesBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1708
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1709
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1710
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1711
    myMenu at:#projects 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1712
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1713
					'new project'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1714
					'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1715
					'select project ...'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1716
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1717
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1718
					#newProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1719
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1720
					#selectProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1721
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1722
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1723
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1724
    myMenu at:#settings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1725
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1726
					'language'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1727
					'show keyboard mappings'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1728
					'view style'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1729
					'messages'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1730
					'compilation'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1731
					'misc'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1732
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1733
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1734
					#languageSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1735
					#keyboardSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1736
					#viewStyleSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1737
					#messageSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1738
					#compilerSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1739
					#miscSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1740
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1741
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1742
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1743
    self setupToolsMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1744
    self setupDemoMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1745
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1746
    ActiveHelp notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1747
	l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1748
		'\c active help'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1749
		'ST/X documentation'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1750
	      ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1751
	s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1752
		#toggleActiveHelp:
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1753
		#startDocumentationTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1754
	      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1755
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1756
	l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1757
		'ST/X documentation'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1758
	      ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1759
	s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1760
		#startDocumentationTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1761
	      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1762
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1763
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1764
    myMenu at:#help 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1765
	   putLabels:(resources array:l)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1766
	   selectors:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1767
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1768
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1769
    (ActiveHelp notNil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1770
    and:[ActiveHelp isActive]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1771
	(myMenu menuAt:#help) checkToggleAt:#toggleActiveHelp: put:true
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1772
    ].
93
claus
parents: 92
diff changeset
  1773
!
claus
parents: 92
diff changeset
  1774
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1775
setupOtherViewsIn:aTopView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1776
    "a hook - allows redefinition in your personal subclass.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1777
     For example, add a clock:"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1778
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1779
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1780
    |sz clock space halfSpace|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1781
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1782
    sz := buttonPanel innerHeight - (buttonPanel level abs*2).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1783
    space := View viewSpacing.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1784
    halfSpace := space // 2.
93
claus
parents: 92
diff changeset
  1785
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1786
    buttonPanel rightInset:sz+(space  * 2).
93
claus
parents: 92
diff changeset
  1787
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1788
    clock := ClockView in:buttonPanel topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1789
    clock borderWidth:1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1790
    clock showSeconds:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1791
    clock extent:(sz @ sz).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1792
    clock origin:(1.0 @ (buttonPanel origin y + halfSpace)).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1793
    clock leftInset:sz negated - 2 - halfSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1794
    clock rightInset:halfSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1795
    clock level:1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1796
"
93
claus
parents: 92
diff changeset
  1797
!
claus
parents: 92
diff changeset
  1798
claus
parents: 92
diff changeset
  1799
setupToolsMenu
claus
parents: 92
diff changeset
  1800
    "setup the tools pulldown menu"
claus
parents: 92
diff changeset
  1801
claus
parents: 92
diff changeset
  1802
    |m|
claus
parents: 92
diff changeset
  1803
claus
parents: 92
diff changeset
  1804
    myMenu at:#tools 
claus
parents: 92
diff changeset
  1805
	   putLabels:(resources array:#(
claus
parents: 92
diff changeset
  1806
					'workspace'
claus
parents: 92
diff changeset
  1807
					'-'
claus
parents: 92
diff changeset
  1808
					'monitors'
claus
parents: 92
diff changeset
  1809
					'-'
claus
parents: 92
diff changeset
  1810
					'view tree (all views)'
claus
parents: 92
diff changeset
  1811
					'view tree'
claus
parents: 92
diff changeset
  1812
					'inspect view'
claus
parents: 92
diff changeset
  1813
					'destroy view'
claus
parents: 92
diff changeset
  1814
					'-'
claus
parents: 92
diff changeset
  1815
					'hardcopy'
120
claus
parents: 119
diff changeset
  1816
					'-'
claus
parents: 119
diff changeset
  1817
					'misc'
93
claus
parents: 92
diff changeset
  1818
					))
claus
parents: 92
diff changeset
  1819
	   selectors:#(
claus
parents: 92
diff changeset
  1820
					#startWorkspace 
claus
parents: 92
diff changeset
  1821
					nil
claus
parents: 92
diff changeset
  1822
					#monitors
claus
parents: 92
diff changeset
  1823
					nil
claus
parents: 92
diff changeset
  1824
					#startFullWindowTreeView 
claus
parents: 92
diff changeset
  1825
					#startWindowTreeView 
claus
parents: 92
diff changeset
  1826
					#viewInspect 
claus
parents: 92
diff changeset
  1827
					#viewDestroy 
claus
parents: 92
diff changeset
  1828
					nil
claus
parents: 92
diff changeset
  1829
					#hardcopy 
120
claus
parents: 119
diff changeset
  1830
					nil
claus
parents: 119
diff changeset
  1831
					#misc 
93
claus
parents: 92
diff changeset
  1832
		      )
claus
parents: 92
diff changeset
  1833
	   receiver:self.
claus
parents: 92
diff changeset
  1834
claus
parents: 92
diff changeset
  1835
claus
parents: 92
diff changeset
  1836
    m := myMenu menuAt:#tools.
claus
parents: 92
diff changeset
  1837
    m subMenuAt:#monitors 
claus
parents: 92
diff changeset
  1838
      put:(PopUpMenu
claus
parents: 92
diff changeset
  1839
		labels:(resources array:#(
claus
parents: 92
diff changeset
  1840
					   'process'
claus
parents: 92
diff changeset
  1841
					   'memory'
claus
parents: 92
diff changeset
  1842
					   'event'
claus
parents: 92
diff changeset
  1843
					   '-'
claus
parents: 92
diff changeset
  1844
					   'memory usage'
claus
parents: 92
diff changeset
  1845
					 ))
claus
parents: 92
diff changeset
  1846
		selectors:#(
claus
parents: 92
diff changeset
  1847
					#startProcessMonitor
claus
parents: 92
diff changeset
  1848
					#startMemoryMonitor 
claus
parents: 92
diff changeset
  1849
					#startEventMonitor 
claus
parents: 92
diff changeset
  1850
					nil
claus
parents: 92
diff changeset
  1851
					#startMemoryUsageView 
claus
parents: 92
diff changeset
  1852
			   )
claus
parents: 92
diff changeset
  1853
		receiver:self).
claus
parents: 92
diff changeset
  1854
120
claus
parents: 119
diff changeset
  1855
    m subMenuAt:#misc 
claus
parents: 119
diff changeset
  1856
      put:(PopUpMenu
claus
parents: 119
diff changeset
  1857
		labels:(resources array:#(
claus
parents: 119
diff changeset
  1858
					   'remove all break/trace points'
claus
parents: 119
diff changeset
  1859
					 ))
claus
parents: 119
diff changeset
  1860
		selectors:#(
claus
parents: 119
diff changeset
  1861
					#removeAllBreakAndTracePoints 
claus
parents: 119
diff changeset
  1862
			   )
claus
parents: 119
diff changeset
  1863
		receiver:self).
claus
parents: 119
diff changeset
  1864
93
claus
parents: 92
diff changeset
  1865
    m subMenuAt:#hardcopy 
claus
parents: 92
diff changeset
  1866
      put:(PopUpMenu
claus
parents: 92
diff changeset
  1867
		labels:(resources array:#(
claus
parents: 92
diff changeset
  1868
					   'screen'
claus
parents: 92
diff changeset
  1869
					   'area'
claus
parents: 92
diff changeset
  1870
					   'view'
claus
parents: 92
diff changeset
  1871
					 ))
claus
parents: 92
diff changeset
  1872
		selectors:#(
claus
parents: 92
diff changeset
  1873
					#fullScreenHardcopy
claus
parents: 92
diff changeset
  1874
					#screenHardcopy
claus
parents: 92
diff changeset
  1875
					#viewHardcopy
claus
parents: 92
diff changeset
  1876
			   )
claus
parents: 92
diff changeset
  1877
		receiver:self).
claus
parents: 92
diff changeset
  1878
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1879
!
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1880
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1881
setupTranscriptIn:aView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1882
    |v|
107
claus
parents: 106
diff changeset
  1883
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1884
    (Transcript notNil and:[Transcript ~~ Stderr]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1885
	Transcript topView destroy.
110
claus
parents: 109
diff changeset
  1886
    ].
claus
parents: 109
diff changeset
  1887
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1888
    v := HVScrollableView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1889
		for:TextCollector
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1890
		miniScrollerH:true 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1891
		miniScrollerV:false 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1892
		in:aView.
93
claus
parents: 92
diff changeset
  1893
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1894
    v origin:(0.0 @ (buttonPanel corner y + View viewSpacing)) 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1895
      corner:(1.0 @ 1.0).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1896
    transcript := v scrolledView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1897
    transcript beTranscript.
94
claus
parents: 93
diff changeset
  1898
!
claus
parents: 93
diff changeset
  1899
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1900
setupViewsIn:topView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1901
    "create the pulldown menu, buttonPanel and transcript view"
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1902
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1903
    |tFont|
131
claus
parents: 128
diff changeset
  1904
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1905
    topView model:self.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1906
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1907
    myMenu := PullDownMenu in:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1908
    myMenu origin:0.0 @ 0.0 corner:(1.0 @ myMenu height).
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1909
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1910
    self setupMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1911
    self setupButtonPanelIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1912
    self setupTranscriptIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1913
    self setupInfoViewIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1914
    self setupOtherViewsIn:topView.
118
claus
parents: 117
diff changeset
  1915
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1916
    tFont := transcript font.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1917
    topView extent:(((tFont widthOf:'3')*60) max:myMenu preferredExtent x)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1918
		    @ 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1919
		    ((tFont height) * 20).
118
claus
parents: 117
diff changeset
  1920
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1921
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1922
     NewLauncher open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1923
    "
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1924
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1925
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1926
!NewLauncher methodsFor:'private'!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1927
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1928
pickAView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1929
    |v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1930
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1931
    (Delay forSeconds:1) wait.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1932
    v := Screen current viewFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1933
    v isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1934
	self warn:'sorry, this is not a smalltalk view'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1935
	^ nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1936
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1937
    ^ v
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1938
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1939
106
claus
parents: 105
diff changeset
  1940
reopenLauncher
claus
parents: 105
diff changeset
  1941
    "for now (since style & language settings currently do
claus
parents: 105
diff changeset
  1942
     not affect living views ...)"
claus
parents: 105
diff changeset
  1943
claus
parents: 105
diff changeset
  1944
    |contents|
claus
parents: 105
diff changeset
  1945
claus
parents: 105
diff changeset
  1946
    contents := Transcript endEntry; contents.
claus
parents: 105
diff changeset
  1947
    self class open.
claus
parents: 105
diff changeset
  1948
    Transcript contents:contents; hideCursor; scrollToBottom; cursorToEnd; showCursor
claus
parents: 105
diff changeset
  1949
!
claus
parents: 105
diff changeset
  1950
100
claus
parents: 99
diff changeset
  1951
saveAllViews
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1952
    "tell each topview that we are going to terminate and give it chance
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1953
     to save its contents."
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1954
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1955
    ObjectMemory changed:#aboutToExit
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1956
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1957
93
claus
parents: 92
diff changeset
  1958
saveScreenImage:anImage defaultName:defaultName
claus
parents: 92
diff changeset
  1959
    "save an image into a file 
claus
parents: 92
diff changeset
  1960
     - ask user for filename using a fileSelectionBox."
claus
parents: 92
diff changeset
  1961
claus
parents: 92
diff changeset
  1962
    |fileName|
claus
parents: 92
diff changeset
  1963
claus
parents: 92
diff changeset
  1964
    fileName := Dialog
claus
parents: 92
diff changeset
  1965
		    requestFileName:'save image in:'
claus
parents: 92
diff changeset
  1966
		    default:(defaultName , '.tiff')
claus
parents: 92
diff changeset
  1967
		    ok:'save'
claus
parents: 92
diff changeset
  1968
		    abort:'abort'
claus
parents: 92
diff changeset
  1969
		    pattern:'*.tiff'.
claus
parents: 92
diff changeset
  1970
claus
parents: 92
diff changeset
  1971
    fileName notNil ifTrue:[
claus
parents: 92
diff changeset
  1972
	anImage saveOn:fileName
claus
parents: 92
diff changeset
  1973
    ].
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1974
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1975
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1976
!NewLauncher methodsFor:'queries'!
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1977
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1978
processName
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1979
    "for monitors only - my name"
142
claus
parents: 140
diff changeset
  1980
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1981
    ^ 'ST/X Launcher'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1982
! !
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1983
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1984
!NewLauncher class methodsFor:'documentation'!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1985
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1986
version
335
c725e5d99819 localSource-first in misc-settings box
Claus Gittinger <cg@exept.de>
parents: 327
diff changeset
  1987
    ^ '$Header: /cvs/stx/stx/libtool/Launcher.st,v 1.72 1996-01-24 19:48:35 cg Exp $'
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1988
! !