Launcher.st
author Claus Gittinger <cg@exept.de>
Tue, 12 Dec 1995 17:56:56 +0100
changeset 281 7b73ea8b2faa
parent 262 29e57d617edd
child 298 d1212fc486b9
permissions -rw-r--r--
more for international language support
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 
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   304
        respondTo:#getModules 
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   305
        with:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   306
            |l|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   307
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   308
            l := Array new.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   309
            (showModules value or:[showBuiltIn value]) ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   310
                allModules := ObjectMemory binaryModuleInfo asOrderedCollection.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   311
                (showBuiltIn value and:[showModules value]) ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   312
                    allModules := allModules select:[:i |
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   313
                        |wantToSee|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   314
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   315
                        wantToSee := (i at:#dynamic).
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   316
                        showBuiltIn value ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   317
                            wantToSee := wantToSee not
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   318
                        ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   319
                        wantToSee
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   320
                    ]
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   321
                ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   322
                "/ sorting by reverse id brings newest ones to the top (a side effect)
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   323
                allModules sort:[:a :b | (a at:#id) > (b at:#id)].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   324
                moduleNames := allModules collect:[:entry | (entry at:#name)].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   325
                l := l , moduleNames.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   326
            ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   327
            showMethods value ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   328
                allObjects := ObjectFileLoader loadedObjectHandles.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   329
                methodObjects := (allObjects select:[:h | h isMethodHandle]) asArray.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   330
                methodNames := methodObjects collect:[:mH | mH method isNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   331
                                                                'compiled method - removed' , ' (in ' , mH pathName , ')'
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   332
                                                            ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   333
                                                                'compiled method ' , mH method whoString , ' (in ' , mH pathName , ')'
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   334
                                                            ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   335
                                                     ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   336
                l := l , methodNames.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   337
            ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   338
            list1 list:l.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   339
            unloadButton disable.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
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 |
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   356
        |info classNames tabs|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   357
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   358
        (showModules value or:[showBuiltIn value]) ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   359
            info := allModules at:sel ifAbsent:nil.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   360
        ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   361
        info isNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   362
            "/ selected a method
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   363
            list2 list:#().
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   364
            unloadButton enable.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   365
        ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   366
            "/ selected a package
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   367
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
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
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   370
            "/ fill bottom list with class-info
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   371
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   372
            classNames := (info at:#classNames) asSortedCollection.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   373
            classNames := classNames collect:[:cName |
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   374
                            |cls entry rev listEntry|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   375
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   376
                            listEntry := MultiColListEntry new:2 tabulatorSpecification:tabs.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   377
                            listEntry colAt:1 put:cName.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   378
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   379
                            cls := Smalltalk classNamed:cName.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   380
                            cls isNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   381
                                listEntry colAt:2 put:'(class removed)'.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   382
                            ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   383
                                rev := cls binaryRevision.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   384
                                rev notNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   385
                                    entry :='(bin: ' , rev.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   386
                                    cls revision ~= rev ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   387
                                        entry := entry , ' / src: ' , cls revision    
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   388
                                    ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   389
                                    listEntry colAt:2 put:entry , ')'
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
   390
                                ] ifFalse:[
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
   391
                                   cls revision notNil ifTrue:[
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
   392
                                        listEntry colAt:2 put:'(overloaded by: ' , cls revision , ')' 
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
   393
                                   ]
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
   394
                                ]
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   395
                            ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   396
                            listEntry
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   397
                          ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   398
            list2 list:classNames.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   399
            (info at:#dynamic) ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   400
                unloadButton enable.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   401
            ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   402
                unloadButton disable.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   403
            ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
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:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   439
        self withWaitCursorDo:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   440
            box withWaitCursorDo:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   441
                |info idx pathName|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   442
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   443
                idx := list1 selectionIndex.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   444
                info := allModules at:idx ifAbsent:nil.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   445
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   446
                info isNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   447
                    "/ selected a method
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   448
                    idx := idx - allModules size.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   449
                    pathName := (methodObjects at:idx) pathName.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   450
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   451
                ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   452
                    "/ selected a package
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   453
                    pathName := (info at:#pathName).
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   454
                ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   455
                ObjectFileLoader unloadObjectFile:pathName.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   456
                moduleListUpdater getModules.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   457
                unloadButton disable.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   458
            ]
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
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)); 
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   471
        height:(450 min:(box device height - 50)); 
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
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.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   755
			list2 retractInterrestFor:selectionForwarder.
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.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   764
			list1 retractInterrestFor:selectionForwarder.
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 |
281
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   882
        self withWaitCursorDo:[
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   883
            Transcript showCr:'change language to ' , newLanguage , ' ...'.
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   884
            idx := translatedLanguages indexOf:newLanguage withoutSeparators.
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   885
            idx ~~ 0 ifTrue:[
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   886
                language := listOfLanguages at:idx
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   887
            ] ifFalse:[
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   888
                language := newLanguage
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   889
            ].
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   890
            Smalltalk at:#Language put:language asSymbol.
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   891
            Smalltalk changed:#Language.
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   892
            ResourcePack flushCachedResourcePacks
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
   893
        ].
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   934
    |box check logDoits shadows updChanges changeFileName
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   935
     loadBinaries compileLazy hostNameInLabel useManager y component|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   936
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   937
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   938
    "/ extract relevant system settings ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   939
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   940
    logDoits := Smalltalk logDoits asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   941
    shadows := PopUpView shadows asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   942
    hostNameInLabel := StandardSystemView includeHostNameInLabel asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   943
    updChanges := Class updatingChanges asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   944
    changeFileName := ObjectMemory nameForChanges asValue.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   945
    useManager := (Smalltalk at:#SourceCodeManager) notNil asValue.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   946
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   947
    loadBinaries := Smalltalk loadBinaries asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   948
    compileLazy := Autoload compileLazy asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   949
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   950
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   951
    "/ create a box on those values ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   952
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   953
    box := DialogBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   954
    box label:(resources string:'Other settings').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   955
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   956
    box addCheckBox:(resources string:'log compiles in changes file') on:updChanges.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   957
    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
   958
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   959
    y := box yPosition.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   960
    component := box addTextLabel:(resources string:'change file name:').
228
5590115a282c no borders in labels
Claus Gittinger <cg@exept.de>
parents: 227
diff changeset
   961
    component width:0.5; adjust:#right; borderWidth:0.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   962
    box yPosition:y.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   963
    component := box addInputFieldOn:changeFileName tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   964
    component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   965
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   966
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   967
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   968
    box addCheckBox:(resources string:'lazy compilation when autoloading') on:compileLazy.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   969
    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
   970
    ObjectFileLoader isNil ifTrue:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   971
        loadBinaries value:false.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   972
        check disable
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   973
    ].
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   974
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   975
    check := box addCheckBox:(resources string:'sourcecode from sourcecode management') on:useManager.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   976
    (AbstractSourceCodeManager isNil 
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   977
    or:[AbstractSourceCodeManager defaultManager isNil]) ifTrue:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   978
        useManager value:false.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   979
        check disable
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   980
    ].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   981
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   982
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   983
    box addCheckBox:(resources string:'shadows under popup views') on:shadows.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   984
    box addCheckBox:(resources string:'hostname in window labels') on:hostNameInLabel.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   985
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   986
    box addAbortButton; addOkButton.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   987
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   988
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   989
    "/ show the box ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   990
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   991
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   992
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   993
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   994
    "/ update system settings
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   995
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   996
    box accepted ifTrue:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   997
        Smalltalk logDoits:logDoits value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   998
        PopUpView shadows:shadows value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   999
        Class updateChanges:updChanges value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1000
        Autoload compileLazy:compileLazy value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1001
        Smalltalk loadBinaries:loadBinaries value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1002
        StandardSystemView includeHostNameInLabel:hostNameInLabel value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1003
        ObjectMemory nameForChanges:changeFileName value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1004
        useManager value ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1005
            (Smalltalk at:#SourceCodeManager) isNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1006
                Smalltalk at:#SourceCodeManager put:(AbstractSourceCodeManager defaultManager)
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1007
            ]
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1008
        ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1009
            Smalltalk at:#SourceCodeManager put:nil
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1010
        ]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1011
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1012
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1013
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1014
    "Modified: 7.12.1995 / 20:05:23 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1015
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1016
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1017
viewStyleSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1018
    |listOfStyles resourceDir dir box 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1019
     list listView infoLabel infoForwarder newStyle|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1020
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1021
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1022
     search resources directory for a list of .style files ...
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1023
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1024
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1025
    resourceDir := Smalltalk getSystemFileName:'resources'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1026
    resourceDir isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1027
	self warn:'no styles found (missing ''resources'' directory)'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1028
	^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1029
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1030
    dir := FileDirectory directoryNamed:resourceDir.
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
    listOfStyles := dir select:[:aFileName | aFileName endsWith:'.style'].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1033
    listOfStyles := listOfStyles collect:[:aFileName | aFileName copyWithoutLast:6].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1034
    listOfStyles sort.
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
"/ old code: used a standard ListSelectionBox
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1037
"/ changed to intercept selection and add info-output.
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
"/    box := ListSelectionBox title:(resources string:'STYLE_MSG') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1040
"/    box label:(resources string:'Style selection').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1041
"/    box list:listOfStyles.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1042
"/    box initialText:View defaultStyle.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1043
"/    box selectAction:[:newStyle |
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
"/    box action:[:newStyle |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1046
"/        transcript topView withCursor:Cursor wait do:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1047
"/            Transcript showCr:'change style to ' , newStyle , ' ...'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1048
"/            View defaultStyle:newStyle asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1049
"/        ]
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
"/    box showAtPointer
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1052
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1053
"/ new code: build box 'by 'hand'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1054
"/
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1055
    infoForwarder := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1056
    infoForwarder respondTo:#showInfo
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1057
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1058
			|nm sheet comment|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1059
			nm := list selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1060
			sheet := ViewStyle fromFile:(nm , '.style').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1061
			comment := sheet at:#comment ifAbsent:''.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1062
			infoLabel label:comment withCRs asStringCollection
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1063
		       ].
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
    list := SelectionInList with:listOfStyles.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1066
    list onChangeSend:#showInfo to:infoForwarder.
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
    box := Dialog new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1069
    box label:(resources string:'Style selection').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1070
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1071
    (box addTextLabel:(resources string:'STYLE_MSG') withCRs) borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1072
    listView := SelectionInListView on:list.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1073
    listView doubleClickAction:[:sel | box accept value:true. box hide].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1074
    listView height:200.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1075
    box addComponent:(ScrollableView forView:listView) tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1076
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1077
227
4c0d12e2a3dc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 226
diff changeset
  1078
    (infoLabel := box addTextLabel:'\\' withCRs) adjust:#centerLeft; borderWidth:0.
219
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
    box addAbortButton; addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1081
    list selection:(View defaultStyle).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1082
    box extent:(box preferredExtent).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1083
    box minExtent:box extent.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1084
    box maxExtent:box extent.
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 showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1087
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1088
    box accepted ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1089
	newStyle := list selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1090
	newStyle notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1091
	    self withWaitCursorDo:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1092
		Transcript showCr:'change style to ' , newStyle , ' ...'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1093
		View defaultStyle:newStyle asSymbol.
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
	    self reopenLauncher.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1096
	]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1097
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1098
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1099
! !
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
!NewLauncher methodsFor:'actions - tools'!
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
fullScreenHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1104
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1105
     save the contents of the whole screen."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1106
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1107
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1108
	self saveScreenImage:(Image fromScreen) defaultName:'screen'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1109
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1110
!
99
claus
parents: 98
diff changeset
  1111
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1112
removeAllBreakAndTracePoints
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1113
    MessageTracer cleanup
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
screenHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1117
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1118
     let user specify a rectangular area on the screen
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1119
     and save its contents."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1120
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1121
    |area|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1122
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1123
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1124
	area := Rectangle fromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1125
	(area width > 0 and:[area height > 0]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1126
	    self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1127
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1128
    ] afterSeconds:1
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
startEventMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1132
    EventMonitor open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1133
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1134
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1135
startFullWindowTreeView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1136
    WindowTreeView open
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1139
startMemoryMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1140
    MemoryMonitor open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1141
!
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
startMemoryUsageView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1144
    MemoryUsageView open
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1147
startProcessMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1148
    ProcessMonitor open
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1151
startWindowTreeView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1152
    |v|
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
    v := self pickAView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1155
    v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1156
	WindowTreeView openOn:v topView
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
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1159
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1160
viewDestroy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1161
    "let user pick a view and destroy it.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1162
     Even allow destroying non-smalltalk views
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1163
     (also for views which I forgot due to some error)"
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
    |device p v id|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1166
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1167
    (Delay forSeconds:1) wait.
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
    device := Screen current.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1170
    p :=  device pointFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1171
    id := device viewIdFromPoint:p.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1172
    v := device viewFromId:id.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1173
    v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1174
	v topView destroy.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1175
	^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1176
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1177
    id = device rootView id ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1178
	^ self
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
    (Dialog confirm:'mhmh, this may not a be smalltalk view.\Destroy anyway ?' withCRs)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1181
    ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1182
	device destroyView:nil withId:id
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1185
    "Modified: 18.9.1995 / 23:13:32 / claus"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1186
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1187
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1188
viewHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1189
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1190
     let user specify a view and save its contents."
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
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1193
	|v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1194
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1195
	v := Screen current viewFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1196
	v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1197
	    self saveScreenImage:(Image fromView:(v topView)) defaultName:'hardcopy'
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
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1200
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1201
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1202
viewInspect
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1203
    "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
  1204
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1205
    |v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1206
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1207
    v := self pickAView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1208
    v notNil ifTrue:[
226
4b050498fe46 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 219
diff changeset
  1209
"/        v topView inspect
4b050498fe46 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 219
diff changeset
  1210
	v inspect
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1211
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1212
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1213
! !
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
!NewLauncher methodsFor:'change & update'!
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
update:something with:aParameter from:changedObject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1218
    ((something == #currentProject)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1219
    or:[changedObject == Project]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1220
	self changed:#info.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1221
	^ self
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
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1224
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1225
!NewLauncher methodsFor:'help'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1226
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1227
helpTextFor:aComponent
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1228
    |sel s|
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
    aComponent == transcript ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1231
	s := 'TRANSCRIPT_HELP'
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1234
    aComponent == infoView ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1235
	s := 'INFOVIEW_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1236
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1237
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1238
    (buttonPanel subViews includes:aComponent) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1239
	"kludge: look for its change selector"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1240
	sel := aComponent changeMessage.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1241
	sel == #startSystemBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1242
	    s := 'SBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1243
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1244
	sel == #startFileBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1245
	    s := 'FBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1246
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1247
	sel == #startChangesBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1248
	    s := 'CBROWSER_BUTTON_HELP'
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
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1251
    s notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1252
	^ resources string:s
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
    ^ nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1255
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1256
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1257
!NewLauncher methodsFor:'infoview update'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1258
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1259
info
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1260
    |project projectName projectDir packageName|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1261
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1262
    (Project isNil or:[(project := Project current) isNil]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1263
	projectName := '* none *'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1264
	projectDir := '.'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1265
	packageName := '* none *'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1266
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1267
	projectName := project name.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1268
	projectDir := project directory.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1269
	packageName := project packageName.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1270
    ].
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
    ^ resources
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1273
	string:'project: ''%1''  fileOut to: ''%3''  package: ''%2'''
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1274
	  withArgs:(Array 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1275
			with:projectName
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1276
			with:packageName 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1277
			with:(projectDir contractTo:30))
99
claus
parents: 98
diff changeset
  1278
! !
claus
parents: 98
diff changeset
  1279
93
claus
parents: 92
diff changeset
  1280
!NewLauncher methodsFor:'initialize / release'!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1281
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1282
addTopViewsToCurrentProject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1283
    "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
  1284
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1285
    ^ self
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
buttonPanelSpec
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1289
    "return a spec for the buttons in the panel;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1290
     entries consists of selector and bitmap-filename.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1291
     nil selectors are taken as separators (see setupButtonPanel)"
98
claus
parents: 96
diff changeset
  1292
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1293
    ^ #(
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1294
	#(startSystemBrowser 'SBrowser32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1295
	#(startFileBrowser   'FBrowser32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1296
"/        #(startWorkspace      'Workspace32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1297
	#(nil nil)
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1298
	#(startChangesBrowser 'CBrowser32x32.xbm')
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1299
"/        #(nil nil)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1300
"/        #(nil nil)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1301
"/        #(startDocumentationTool 'book11.ico')
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1302
     )
230
6be247b9d815 workspace button
Claus Gittinger <cg@exept.de>
parents: 228
diff changeset
  1303
6be247b9d815 workspace button
Claus Gittinger <cg@exept.de>
parents: 228
diff changeset
  1304
    "Created: 4.12.1995 / 20:16:18 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1305
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1306
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1307
closeRequest
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1308
    (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
  1309
	super closeRequest
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
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1312
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1313
focusSequence
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1314
    ^ (Array with:myMenu) 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1315
      , 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1316
      (buttonPanel subViews select:[:element | element isKindOf:Button])
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1317
"/      , (Array with:Transcript)
98
claus
parents: 96
diff changeset
  1318
!
claus
parents: 96
diff changeset
  1319
93
claus
parents: 92
diff changeset
  1320
openInterface
98
claus
parents: 96
diff changeset
  1321
    "sent by my superclass to open up my interface"
93
claus
parents: 92
diff changeset
  1322
claus
parents: 92
diff changeset
  1323
    |top icn w|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1324
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1325
    top := StandardSystemView new.
205
e3952eceab14 set iconLabel
Claus Gittinger <cg@exept.de>
parents: 192
diff changeset
  1326
    top label:'Smalltalk/X'; iconLabel:'ST/X Launcher'.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1327
    top extent:(400@300 ).
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1328
92
claus
parents: 91
diff changeset
  1329
    "
claus
parents: 91
diff changeset
  1330
     temporary kludge for SGI;
claus
parents: 91
diff changeset
  1331
     this will be moved into StandardSystemView and be done
claus
parents: 91
diff changeset
  1332
     automatically soon ...
claus
parents: 91
diff changeset
  1333
    "
106
claus
parents: 105
diff changeset
  1334
    Screen current serverVendor = 'Silicon Graphics' ifTrue:[
93
claus
parents: 92
diff changeset
  1335
	icn := self class aboutIcon.
92
claus
parents: 91
diff changeset
  1336
	icn notNil ifTrue:[
93
claus
parents: 92
diff changeset
  1337
	    icn := icn magnifiedTo:86@68.
92
claus
parents: 91
diff changeset
  1338
	    w := View extent:86@68. "/ icn extent.
claus
parents: 91
diff changeset
  1339
	    w viewBackground:icn.
claus
parents: 91
diff changeset
  1340
	    top iconView:w
claus
parents: 91
diff changeset
  1341
	]
claus
parents: 91
diff changeset
  1342
    ].
claus
parents: 91
diff changeset
  1343
93
claus
parents: 92
diff changeset
  1344
    self setupViewsIn:top.
98
claus
parents: 96
diff changeset
  1345
claus
parents: 96
diff changeset
  1346
    top application:self.   
claus
parents: 96
diff changeset
  1347
    builder window:top.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1348
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1349
    "
92
claus
parents: 91
diff changeset
  1350
     open with higher prio to allow interaction even while things
claus
parents: 91
diff changeset
  1351
     are running ...
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1352
    "
92
claus
parents: 91
diff changeset
  1353
    top openWithPriority:(Processor userSchedulingPriority + 1).
93
claus
parents: 92
diff changeset
  1354
!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1355
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1356
release
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1357
    infoProcess notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1358
	infoProcess terminate.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1359
	infoProcess := nil.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1360
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1361
    super release
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1362
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1363
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1364
restarted
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1365
    "image restart - since WindowGroup recreates the process with
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1366
     default prio, we have to raise the prio again.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1367
     Mhmh - this looks like a bug to me ..."
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1368
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1369
    Processor activeProcess priority:(Processor userSchedulingPriority + 1).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1370
    super restarted
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1371
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1372
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1373
saveAndTerminate
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1374
    "
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1375
     some windowManagers can send this, to shutDown an application
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1376
     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
  1377
     prepared for this ;-)"
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1378
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1379
    self snapshot.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1380
    super saveAndTerminate
103
claus
parents: 102
diff changeset
  1381
!
claus
parents: 102
diff changeset
  1382
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1383
setupButtonPanelIn:aTopView
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1384
    "create the buttonPanel"
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1385
107
claus
parents: 106
diff changeset
  1386
    |spc mh|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1387
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1388
    spc := View viewSpacing // 2.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1389
    buttonPanel := HorizontalPanelView in:aTopView.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1390
    buttonPanel level:-1; borderWidth:0.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1391
    buttonPanel horizontalLayout:#leftSpace.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1392
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1393
    self buttonPanelSpec do:[:entry |
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1394
	|sel b sep|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1395
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1396
	sel := entry at:1.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1397
	sel isNil ifTrue:[
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1398
	    sep := View in:buttonPanel.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1399
	    sep extent:32@1; borderWidth:0.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1400
	] ifFalse:[
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1401
	    b := Button in:buttonPanel.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1402
	    b form:(Image fromFile:(entry at:2)).
100
claus
parents: 99
diff changeset
  1403
	    b model:self; changeMessage:sel
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1404
	]
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1405
    ].
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1406
100
claus
parents: 99
diff changeset
  1407
    mh := myMenu height.
claus
parents: 99
diff changeset
  1408
    buttonPanel origin:0.0 @ (mh + spc)
105
claus
parents: 104
diff changeset
  1409
		corner:(1.0 @ (mh + spc + buttonPanel preferredExtent y)).
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1410
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1411
    buttonPanel leftInset:spc; rightInset:spc.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1412
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1413
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1414
setupDemoMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1415
    "setup the demo pulldown menu"
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1416
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1417
    |m|
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1418
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1419
    myMenu at:#demos 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1420
	   putLabels:(resources array:#(
91
claus
parents: 90
diff changeset
  1421
					'goodies'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1422
					'games'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1423
					'geometric designs'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1424
					'simple animations'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1425
					'3D graphics'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1426
					'graphic editors'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1427
				       ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1428
	   selectors:#(
91
claus
parents: 90
diff changeset
  1429
					goodies
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1430
					games
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1431
					geometricDesigns
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1432
					simpleAnimations
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1433
					#'3Dgraphics'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1434
					#graphicEditors
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1435
		      )
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1436
	   receiver:self.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1437
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1438
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1439
     only to show two different ways of defining a popUpMenu,
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1440
     we use labels:selectors:receiver: here:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1441
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1442
    m := myMenu menuAt:#demos.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1443
    m subMenuAt:#games
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1444
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1445
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1446
					   'Tetris'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1447
					   'Tic Tac Toe'
142
claus
parents: 140
diff changeset
  1448
					   'Tic Tac Toe (2 players)'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1449
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1450
		selectors:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1451
					   startTetris
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1452
					   startTicTacToe
142
claus
parents: 140
diff changeset
  1453
					   startTicTacToe2
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1454
			   )
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1455
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1456
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1457
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1458
     and labels:selector:args:receiver: here:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1459
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1460
    m subMenuAt:#geometricDesigns
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1461
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1462
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1463
					   'Pen demo'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1464
					   'Commander demo'
116
claus
parents: 115
diff changeset
  1465
					   '-'     
115
claus
parents: 113
diff changeset
  1466
					   'Fractal plants demo'
116
claus
parents: 115
diff changeset
  1467
					   'Fractal patterns demo'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1468
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1469
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1470
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1471
					   PenDemo
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1472
					   CommanderDemo
116
claus
parents: 115
diff changeset
  1473
					   nil
115
claus
parents: 113
diff changeset
  1474
					   FractalPlantsDemo
116
claus
parents: 115
diff changeset
  1475
					   FractalPatternsDemo
91
claus
parents: 90
diff changeset
  1476
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1477
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1478
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1479
    m subMenuAt:#simpleAnimations 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1480
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1481
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1482
					   'Animation'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1483
					   'Globe demo'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1484
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1485
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1486
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1487
					   Animation
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1488
					   GlobeDemo
91
claus
parents: 90
diff changeset
  1489
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1490
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1491
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1492
    m subMenuAt:#'3Dgraphics' 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1493
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1494
		labels:(resources 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1495
			    array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1496
				'plane'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1497
				'tetra'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1498
				'cube (wireframe)'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1499
				'cube (solid)'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1500
				'sphere (wireframe)'
140
claus
parents: 136
diff changeset
  1501
				'doughnut (wireframe)'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1502
				'planet'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1503
				'teapot'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1504
				'logo'
108
claus
parents: 107
diff changeset
  1505
				'x/y graph'
140
claus
parents: 136
diff changeset
  1506
				'-'
claus
parents: 136
diff changeset
  1507
				'cube (light)'
claus
parents: 136
diff changeset
  1508
				'cube (light & texture)'
claus
parents: 136
diff changeset
  1509
				'sphere (light)'
190
a6278b31de11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 185
diff changeset
  1510
				'colored octahedron'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1511
			     ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1512
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1513
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1514
				GLPlaneDemoView2
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1515
				GLTetraDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1516
				GLWireCubeDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1517
				GLCubeDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1518
				GLWireSphereDemoView
140
claus
parents: 136
diff changeset
  1519
				GLDoughnutDemoView
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1520
				GLPlanetDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1521
				GLTeapotDemo
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1522
				Logo3DView1
108
claus
parents: 107
diff changeset
  1523
				GLXYGraph
140
claus
parents: 136
diff changeset
  1524
				nil
claus
parents: 136
diff changeset
  1525
				GLCubeDemoView2
claus
parents: 136
diff changeset
  1526
				GLBrickCubeDemoView
claus
parents: 136
diff changeset
  1527
				GLSphereDemoView2
claus
parents: 136
diff changeset
  1528
				GLOctaHedronDemoView
91
claus
parents: 90
diff changeset
  1529
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1530
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1531
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1532
    m subMenuAt:#graphicEditors 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1533
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1534
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1535
					   'DrawTool'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1536
					   'LogicTool'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1537
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1538
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1539
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1540
					   DrawTool
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1541
					   LogicTool
91
claus
parents: 90
diff changeset
  1542
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1543
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1544
91
claus
parents: 90
diff changeset
  1545
    m subMenuAt:#goodies 
claus
parents: 90
diff changeset
  1546
      put:(PopUpMenu
claus
parents: 90
diff changeset
  1547
		labels:(resources array:#(
claus
parents: 90
diff changeset
  1548
					'clock'
claus
parents: 90
diff changeset
  1549
					'calendar'
claus
parents: 90
diff changeset
  1550
					'-'
claus
parents: 90
diff changeset
  1551
					'mail tool'
claus
parents: 90
diff changeset
  1552
					'news tool'
claus
parents: 90
diff changeset
  1553
					))
claus
parents: 90
diff changeset
  1554
		selector:#openDemo:
claus
parents: 90
diff changeset
  1555
		args:#(
claus
parents: 90
diff changeset
  1556
					Clock 
claus
parents: 90
diff changeset
  1557
					Calendar 
claus
parents: 90
diff changeset
  1558
					nil
claus
parents: 90
diff changeset
  1559
					MailView 
claus
parents: 90
diff changeset
  1560
					NewsView
claus
parents: 90
diff changeset
  1561
		      )
claus
parents: 90
diff changeset
  1562
		receiver:self).
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1563
!
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1564
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1565
setupInfoViewIn:topView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1566
    |spc halfSpc|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1567
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1568
    spc := View viewSpacing.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1569
    infoView := Label label:'' in:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1570
    infoView adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1571
    infoView level:-1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1572
    transcript superView bottomInset:(infoView height + spc).
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1573
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1574
    infoView is3D ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1575
	halfSpc := spc // 2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1576
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1577
	halfSpc := 0
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1578
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1579
    infoView topInset:(infoView height negated - spc + transcript borderWidth);
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1580
	     bottomInset:halfSpc;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1581
	     leftInset:halfSpc; 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1582
	     rightInset:halfSpc.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1583
    infoView origin:0.0 @ 1.0 corner:1.0 @ 1.0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1584
    infoView model:self; aspect:#info; labelMessage:#info.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1585
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1586
    Project notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1587
	Project addDependent:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1588
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1589
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
     NewLauncher open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1592
    "
93
claus
parents: 92
diff changeset
  1593
!
claus
parents: 92
diff changeset
  1594
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1595
setupMenu
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1596
    "setup the pulldown menu"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1597
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1598
    |l s icon|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1599
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1600
    myMenu labels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1601
				     'about'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1602
				     'file'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1603
				     'classes'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1604
				     'tools'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1605
				     'projects'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1606
				     'settings'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1607
				     'demos'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1608
				     'help')).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1609
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1610
     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
  1611
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1612
    icon := self class smallAboutIcon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1613
    icon notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1614
	myMenu labels at:1 put:icon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1615
	myMenu height:(myMenu height max:(icon height + (View viewSpacing * 2)))
93
claus
parents: 92
diff changeset
  1616
    ].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1617
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1618
    myMenu selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1619
				     #about
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1620
				     #file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1621
				     #classes 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1622
				     #tools 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1623
				     #projects 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1624
				     #settings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1625
				     #demos
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1626
				     #help).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1627
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1628
    myMenu at:#about 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1629
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1630
					'about Smalltalk/X ...'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1631
				       ))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1632
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1633
					#about 
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
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1636
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1637
    l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1638
		'file browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1639
		'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1640
		'modules'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1641
		'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1642
		'snapshot'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1643
		'snapshot & exit'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1644
		'exit smalltalk'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1645
	 ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1646
    s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1647
		#startFileBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1648
		nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1649
		#objectModuleDialog 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1650
		nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1651
		#snapshot
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1652
		#snapshotAndExit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1653
		#exit
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1656
    myMenu at:#file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1657
	   putLabels:(resources array:l)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1658
	   selectors:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1659
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1660
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1661
    myMenu at:#classes 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1662
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1663
					'system browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1664
					'class browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1665
					'full class browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1666
					'class hierarchy browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1667
					'class tree'
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
					'implementors'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1670
					'senders'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1671
					'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1672
					'change browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1673
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1674
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1675
					#startSystemBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1676
					#startClassBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1677
					#startFullClassBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1678
					#startClassHierarchyBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1679
					#startClassTreeView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1680
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1681
					#browseImplementors 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1682
					#browseSenders 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1683
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1684
					#startChangesBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1685
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1686
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1687
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1688
    myMenu at:#projects 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1689
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1690
					'new project'
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
					'select project ...'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1693
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1694
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1695
					#newProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1696
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1697
					#selectProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1698
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1699
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1700
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1701
    myMenu at:#settings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1702
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1703
					'language'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1704
					'show keyboard mappings'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1705
					'view style'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1706
					'messages'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1707
					'compilation'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1708
					'misc'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1709
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1710
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1711
					#languageSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1712
					#keyboardSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1713
					#viewStyleSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1714
					#messageSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1715
					#compilerSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1716
					#miscSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1717
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1718
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1719
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1720
    self setupToolsMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1721
    self setupDemoMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1722
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1723
    ActiveHelp notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1724
	l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1725
		'\c active help'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1726
		'ST/X documentation'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1727
	      ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1728
	s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1729
		#toggleActiveHelp:
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1730
		#startDocumentationTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1731
	      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1732
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1733
	l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1734
		'ST/X documentation'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1735
	      ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1736
	s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1737
		#startDocumentationTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1738
	      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1739
    ].
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
    myMenu at:#help 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1742
	   putLabels:(resources array:l)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1743
	   selectors:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1744
	   receiver:self.
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1747
    and:[ActiveHelp isActive]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1748
	(myMenu menuAt:#help) checkToggleAt:#toggleActiveHelp: put:true
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1749
    ].
93
claus
parents: 92
diff changeset
  1750
!
claus
parents: 92
diff changeset
  1751
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1752
setupOtherViewsIn:aTopView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1753
    "a hook - allows redefinition in your personal subclass.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1754
     For example, add a clock:"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1755
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1756
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1757
    |sz clock space halfSpace|
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
    sz := buttonPanel innerHeight - (buttonPanel level abs*2).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1760
    space := View viewSpacing.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1761
    halfSpace := space // 2.
93
claus
parents: 92
diff changeset
  1762
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1763
    buttonPanel rightInset:sz+(space  * 2).
93
claus
parents: 92
diff changeset
  1764
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1765
    clock := ClockView in:buttonPanel topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1766
    clock borderWidth:1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1767
    clock showSeconds:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1768
    clock extent:(sz @ sz).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1769
    clock origin:(1.0 @ (buttonPanel origin y + halfSpace)).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1770
    clock leftInset:sz negated - 2 - halfSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1771
    clock rightInset:halfSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1772
    clock level:1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1773
"
93
claus
parents: 92
diff changeset
  1774
!
claus
parents: 92
diff changeset
  1775
claus
parents: 92
diff changeset
  1776
setupToolsMenu
claus
parents: 92
diff changeset
  1777
    "setup the tools pulldown menu"
claus
parents: 92
diff changeset
  1778
claus
parents: 92
diff changeset
  1779
    |m|
claus
parents: 92
diff changeset
  1780
claus
parents: 92
diff changeset
  1781
    myMenu at:#tools 
claus
parents: 92
diff changeset
  1782
	   putLabels:(resources array:#(
claus
parents: 92
diff changeset
  1783
					'workspace'
claus
parents: 92
diff changeset
  1784
					'-'
claus
parents: 92
diff changeset
  1785
					'monitors'
claus
parents: 92
diff changeset
  1786
					'-'
claus
parents: 92
diff changeset
  1787
					'view tree (all views)'
claus
parents: 92
diff changeset
  1788
					'view tree'
claus
parents: 92
diff changeset
  1789
					'inspect view'
claus
parents: 92
diff changeset
  1790
					'destroy view'
claus
parents: 92
diff changeset
  1791
					'-'
claus
parents: 92
diff changeset
  1792
					'hardcopy'
120
claus
parents: 119
diff changeset
  1793
					'-'
claus
parents: 119
diff changeset
  1794
					'misc'
93
claus
parents: 92
diff changeset
  1795
					))
claus
parents: 92
diff changeset
  1796
	   selectors:#(
claus
parents: 92
diff changeset
  1797
					#startWorkspace 
claus
parents: 92
diff changeset
  1798
					nil
claus
parents: 92
diff changeset
  1799
					#monitors
claus
parents: 92
diff changeset
  1800
					nil
claus
parents: 92
diff changeset
  1801
					#startFullWindowTreeView 
claus
parents: 92
diff changeset
  1802
					#startWindowTreeView 
claus
parents: 92
diff changeset
  1803
					#viewInspect 
claus
parents: 92
diff changeset
  1804
					#viewDestroy 
claus
parents: 92
diff changeset
  1805
					nil
claus
parents: 92
diff changeset
  1806
					#hardcopy 
120
claus
parents: 119
diff changeset
  1807
					nil
claus
parents: 119
diff changeset
  1808
					#misc 
93
claus
parents: 92
diff changeset
  1809
		      )
claus
parents: 92
diff changeset
  1810
	   receiver:self.
claus
parents: 92
diff changeset
  1811
claus
parents: 92
diff changeset
  1812
claus
parents: 92
diff changeset
  1813
    m := myMenu menuAt:#tools.
claus
parents: 92
diff changeset
  1814
    m subMenuAt:#monitors 
claus
parents: 92
diff changeset
  1815
      put:(PopUpMenu
claus
parents: 92
diff changeset
  1816
		labels:(resources array:#(
claus
parents: 92
diff changeset
  1817
					   'process'
claus
parents: 92
diff changeset
  1818
					   'memory'
claus
parents: 92
diff changeset
  1819
					   'event'
claus
parents: 92
diff changeset
  1820
					   '-'
claus
parents: 92
diff changeset
  1821
					   'memory usage'
claus
parents: 92
diff changeset
  1822
					 ))
claus
parents: 92
diff changeset
  1823
		selectors:#(
claus
parents: 92
diff changeset
  1824
					#startProcessMonitor
claus
parents: 92
diff changeset
  1825
					#startMemoryMonitor 
claus
parents: 92
diff changeset
  1826
					#startEventMonitor 
claus
parents: 92
diff changeset
  1827
					nil
claus
parents: 92
diff changeset
  1828
					#startMemoryUsageView 
claus
parents: 92
diff changeset
  1829
			   )
claus
parents: 92
diff changeset
  1830
		receiver:self).
claus
parents: 92
diff changeset
  1831
120
claus
parents: 119
diff changeset
  1832
    m subMenuAt:#misc 
claus
parents: 119
diff changeset
  1833
      put:(PopUpMenu
claus
parents: 119
diff changeset
  1834
		labels:(resources array:#(
claus
parents: 119
diff changeset
  1835
					   'remove all break/trace points'
claus
parents: 119
diff changeset
  1836
					 ))
claus
parents: 119
diff changeset
  1837
		selectors:#(
claus
parents: 119
diff changeset
  1838
					#removeAllBreakAndTracePoints 
claus
parents: 119
diff changeset
  1839
			   )
claus
parents: 119
diff changeset
  1840
		receiver:self).
claus
parents: 119
diff changeset
  1841
93
claus
parents: 92
diff changeset
  1842
    m subMenuAt:#hardcopy 
claus
parents: 92
diff changeset
  1843
      put:(PopUpMenu
claus
parents: 92
diff changeset
  1844
		labels:(resources array:#(
claus
parents: 92
diff changeset
  1845
					   'screen'
claus
parents: 92
diff changeset
  1846
					   'area'
claus
parents: 92
diff changeset
  1847
					   'view'
claus
parents: 92
diff changeset
  1848
					 ))
claus
parents: 92
diff changeset
  1849
		selectors:#(
claus
parents: 92
diff changeset
  1850
					#fullScreenHardcopy
claus
parents: 92
diff changeset
  1851
					#screenHardcopy
claus
parents: 92
diff changeset
  1852
					#viewHardcopy
claus
parents: 92
diff changeset
  1853
			   )
claus
parents: 92
diff changeset
  1854
		receiver:self).
claus
parents: 92
diff changeset
  1855
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1856
!
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1857
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1858
setupTranscriptIn:aView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1859
    |v|
107
claus
parents: 106
diff changeset
  1860
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1861
    (Transcript notNil and:[Transcript ~~ Stderr]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1862
	Transcript topView destroy.
110
claus
parents: 109
diff changeset
  1863
    ].
claus
parents: 109
diff changeset
  1864
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1865
    v := HVScrollableView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1866
		for:TextCollector
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1867
		miniScrollerH:true 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1868
		miniScrollerV:false 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1869
		in:aView.
93
claus
parents: 92
diff changeset
  1870
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1871
    v origin:(0.0 @ (buttonPanel corner y + View viewSpacing)) 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1872
      corner:(1.0 @ 1.0).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1873
    transcript := v scrolledView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1874
    transcript beTranscript.
94
claus
parents: 93
diff changeset
  1875
!
claus
parents: 93
diff changeset
  1876
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1877
setupViewsIn:topView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1878
    "create the pulldown menu, buttonPanel and transcript view"
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1879
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1880
    |tFont|
131
claus
parents: 128
diff changeset
  1881
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1882
    topView model:self.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1883
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1884
    myMenu := PullDownMenu in:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1885
    myMenu origin:0.0 @ 0.0 corner:(1.0 @ myMenu height).
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1886
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1887
    self setupMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1888
    self setupButtonPanelIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1889
    self setupTranscriptIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1890
    self setupInfoViewIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1891
    self setupOtherViewsIn:topView.
118
claus
parents: 117
diff changeset
  1892
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1893
    tFont := transcript font.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1894
    topView extent:(((tFont widthOf:'3')*60) max:myMenu preferredExtent x)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1895
		    @ 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1896
		    ((tFont height) * 20).
118
claus
parents: 117
diff changeset
  1897
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1898
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1899
     NewLauncher open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1900
    "
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1901
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1902
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1903
!NewLauncher methodsFor:'private'!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1904
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1905
pickAView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1906
    |v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1907
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1908
    (Delay forSeconds:1) wait.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1909
    v := Screen current viewFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1910
    v isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1911
	self warn:'sorry, this is not a smalltalk view'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1912
	^ nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1913
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1914
    ^ v
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1915
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1916
106
claus
parents: 105
diff changeset
  1917
reopenLauncher
claus
parents: 105
diff changeset
  1918
    "for now (since style & language settings currently do
claus
parents: 105
diff changeset
  1919
     not affect living views ...)"
claus
parents: 105
diff changeset
  1920
claus
parents: 105
diff changeset
  1921
    |contents|
claus
parents: 105
diff changeset
  1922
claus
parents: 105
diff changeset
  1923
    contents := Transcript endEntry; contents.
claus
parents: 105
diff changeset
  1924
    self class open.
claus
parents: 105
diff changeset
  1925
    Transcript contents:contents; hideCursor; scrollToBottom; cursorToEnd; showCursor
claus
parents: 105
diff changeset
  1926
!
claus
parents: 105
diff changeset
  1927
100
claus
parents: 99
diff changeset
  1928
saveAllViews
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1929
    "tell each topview that we are going to terminate and give it chance
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1930
     to save its contents."
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1931
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1932
    ObjectMemory changed:#aboutToExit
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1933
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1934
93
claus
parents: 92
diff changeset
  1935
saveScreenImage:anImage defaultName:defaultName
claus
parents: 92
diff changeset
  1936
    "save an image into a file 
claus
parents: 92
diff changeset
  1937
     - ask user for filename using a fileSelectionBox."
claus
parents: 92
diff changeset
  1938
claus
parents: 92
diff changeset
  1939
    |fileName|
claus
parents: 92
diff changeset
  1940
claus
parents: 92
diff changeset
  1941
    fileName := Dialog
claus
parents: 92
diff changeset
  1942
		    requestFileName:'save image in:'
claus
parents: 92
diff changeset
  1943
		    default:(defaultName , '.tiff')
claus
parents: 92
diff changeset
  1944
		    ok:'save'
claus
parents: 92
diff changeset
  1945
		    abort:'abort'
claus
parents: 92
diff changeset
  1946
		    pattern:'*.tiff'.
claus
parents: 92
diff changeset
  1947
claus
parents: 92
diff changeset
  1948
    fileName notNil ifTrue:[
claus
parents: 92
diff changeset
  1949
	anImage saveOn:fileName
claus
parents: 92
diff changeset
  1950
    ].
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1951
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1952
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1953
!NewLauncher methodsFor:'queries'!
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1954
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1955
processName
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1956
    "for monitors only - my name"
142
claus
parents: 140
diff changeset
  1957
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1958
    ^ 'ST/X Launcher'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1959
! !
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1960
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1961
!NewLauncher class methodsFor:'documentation'!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1962
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1963
version
281
7b73ea8b2faa more for international language support
Claus Gittinger <cg@exept.de>
parents: 262
diff changeset
  1964
    ^ '$Header: /cvs/stx/stx/libtool/Launcher.st,v 1.67 1995-12-12 16:56:56 cg Exp $'
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1965
! !