Launcher.st
author Claus Gittinger <cg@exept.de>
Thu, 07 Dec 1995 20:09:20 +0100
changeset 250 16612cb1c470
parent 249 cc5c4a442f49
child 262 29e57d617edd
permissions -rw-r--r--
checkin from browser
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
11b4ce85104e Initial revision
claus
parents:
diff changeset
    14
	 instanceVariableNames:'myMenu buttonPanel transcript infoView infoProcess helpIsOn'
11b4ce85104e Initial revision
claus
parents:
diff changeset
    15
	 classVariableNames:'CachedAboutIcon'
11b4ce85104e Initial revision
claus
parents:
diff changeset
    16
	 poolDictionaries:''
11b4ce85104e Initial revision
claus
parents:
diff changeset
    17
	 category:'Interface-Smalltalk'
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 , ')'
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   390
                                ].    
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   391
                            ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   392
                            listEntry
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   393
                          ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   394
            list2 list:classNames.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   395
            (info at:#dynamic) ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   396
                unloadButton enable.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   397
            ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   398
                unloadButton disable.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   399
            ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   400
        ]
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   401
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   402
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   403
    panel := HorizontalPanelView new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   404
245
87fc74d6ea91 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 244
diff changeset
   405
    panel add:(l := Label label:'modules shown:').
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   406
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   407
    panel add:(CheckBox label:'builtin' model:showBuiltIn).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   408
    panel add:(check := CheckBox label:'modules' model:showModules).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   409
    ObjectFileLoader isNil ifTrue:[check disable].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   410
    panel add:(check := CheckBox label:'methods' model:showMethods).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   411
    ObjectFileLoader isNil ifTrue:[check disable].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   412
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   413
    panel horizontalLayout:#fitSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   414
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   415
    box addComponent:panel tabable:true.
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
    box addComponent:listView1 tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   418
    listView1 topInset:(View viewSpacing + panel preferredExtent y).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   419
    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
   420
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   421
    l := box addTextLabel:(resources string:'contained classes/subsets:').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   422
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   423
    l origin:0.0@0.4 corner:1.0@0.4.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   424
    l topInset:(View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   425
    l bottomInset:((l preferredExtent y) negated - View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   426
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   427
    listView2 := HVScrollableView for:SelectionInListView  miniScrollerH:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   428
    listView2 model:list2; printItems:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   429
    box addComponent:listView2 tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   430
    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
   431
    listView2 disable.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   432
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   433
    unloadButton := Button label:(resources string:'unload').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   434
    unloadButton action:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   435
        self withWaitCursorDo:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   436
            box withWaitCursorDo:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   437
                |info idx pathName|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   438
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   439
                idx := list1 selectionIndex.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   440
                info := allModules at:idx ifAbsent:nil.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   441
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   442
                info isNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   443
                    "/ selected a method
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   444
                    idx := idx - allModules size.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   445
                    pathName := (methodObjects at:idx) pathName.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   446
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   447
                ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   448
                    "/ selected a package
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   449
                    pathName := (info at:#pathName).
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   450
                ].
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   451
                ObjectFileLoader unloadObjectFile:pathName.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   452
                moduleListUpdater getModules.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   453
                unloadButton disable.
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
        ]
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   456
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   457
    moduleListUpdater getModules.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   458
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   459
    box addButton:unloadButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   460
    box addAbortButtonLabelled:(resources string:'close').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   461
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   462
    y := box yPosition.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   463
    listView2 topInset:(l preferredExtent y + 5).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   464
    listView2 bottomInset:(box preferredExtent y - y).
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
    box width:(350 min:(box device width * 2 // 3)); 
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   467
        height:(450 min:(box device height - 50)); 
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   468
        sizeFixed:true.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   469
    box showAtPointer.
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   470
    box destroy.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   471
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   472
    "Modified: 17.9.1995 / 16:47:50 / claus"
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   473
    "Modified: 7.12.1995 / 20:08:09 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   474
!
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
snapshot
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   477
    |saveBox|
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
    saveBox := EnterBox title:(resources at:'filename for image:') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   480
    saveBox okText:(resources at:'save').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   481
    saveBox action:[:fileName | 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   482
	(ObjectMemory snapShotOn:fileName) ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   483
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   484
	     snapshot failed for some reason (disk full, no permission etc.)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   485
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   486
	    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
   487
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   488
    ].
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
    saveBox initialText:(ObjectMemory nameForSnapshot).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   491
    saveBox label:'save image'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   492
    saveBox showAtPointer
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
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   495
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   496
snapshotAndExit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   497
    |saveBox|
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
    saveBox := EnterBox title:(resources at:'filename for image:') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   500
    saveBox okText:(resources at:'save & exit').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   501
    saveBox action:[:fileName | 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   502
	(ObjectMemory snapShotOn:fileName) ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   503
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   504
	     snapshot failed for some reason (disk full, no permission etc.)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   505
	     Do NOT exit in this case.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   506
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   507
	    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
   508
	] ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   509
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   510
	     saveAllViews tells all views to shutdown neatly 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   511
	     (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
   512
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   513
	     This is NOT required - all data should be in the snapshot ...
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   514
	     ... however, if remote disks/mountable filesystems are involved,
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   515
	     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
   516
	     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
   517
	    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   518
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   519
	    self saveAllViews.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   520
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   521
	    Smalltalk exit
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
    ].
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
    saveBox initialText:(ObjectMemory nameForSnapshot).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   526
    saveBox label:'save image & exit'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   527
    saveBox showAtPointer
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
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   530
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   531
!NewLauncher methodsFor:'actions - goodies'!
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
startCalendar
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   534
    Calendar open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   535
!
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
startClock
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   538
    RoundClock 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
startMailTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   542
    MailView 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
startNewsTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   546
    NewsView 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
!NewLauncher methodsFor:'actions - projects'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   550
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   551
newProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   552
    Project notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   553
	(ProjectView for:(Project new)) open
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
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   556
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   557
selectProject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   558
    |list box|
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
    Project notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   561
	list := Project allInstances.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   562
	box := ListSelectionBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   563
	box list:(list collect:[:p | p name]).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   564
	box title:(resources string:'select a project').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   565
	box action:[:selection |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   566
	    |project|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   567
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   568
	    project := list detect:[:p | p name = selection] ifNone:[nil].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   569
	    project isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   570
		Transcript showCr:'no such project.'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   571
	    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   572
		project showViews.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   573
		Project current:project
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   574
	    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   575
	].
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   576
	box showAtPointer.
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   577
	box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   578
    ]
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
   579
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
   580
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   581
!NewLauncher methodsFor:'actions - settings'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   582
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   583
compilerSettings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   584
    |box warnings warnSTX warnUnderscore warnOldStyle allowUnderscore immutableArrays
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   585
     warnSTXBox warnUnderscoreBox warnOldStyleBox 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   586
     stcCompilation compilationList stcCompilationOptions stcIncludes stcDefines stcOptions
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   587
     stcLibraries historyLines catchRedefs 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   588
     warnEnabler check y component|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   589
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   590
    warnings := Compiler warnings asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   591
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   592
    warnSTX := Compiler warnSTXSpecials asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   593
    warnUnderscore := Compiler warnUnderscoreInIdentifier asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   594
    warnOldStyle := Compiler warnOldStyleAssignment asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   595
    allowUnderscore := Compiler allowUnderscoreInIdentifier asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   596
    immutableArrays := Compiler arraysAreImmutable asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   597
    stcCompilationOptions := #( always default never).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   598
    stcCompilation := SelectionInList new list:(resources array:#('always' 'primitive code only' 'never')).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   599
    stcCompilation selectionIndex:2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   600
    stcIncludes := Compiler stcCompilationIncludes asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   601
    stcDefines := Compiler stcCompilationDefines asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   602
    stcOptions := Compiler stcCompilationOptions asValue.
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   603
    ObjectFileLoader notNil ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   604
	stcLibraries := (String fromStringCollection:ObjectFileLoader searchedLibraries separatedBy:' ') asValue.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   605
    ].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   606
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   607
    catchRedefs := Class catchMethodRedefinitions asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   608
    historyLines := (HistoryManager notNil and:[HistoryManager isActive]) asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   609
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   610
    warnEnabler := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   611
    warnEnabler
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   612
	respondTo:#check 
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   613
	with:[warnings value ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   614
		warnSTXBox enable. 
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   615
		warnOldStyleBox enable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   616
		allowUnderscore value ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   617
		    warnUnderscoreBox enable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   618
		] ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   619
		    warnUnderscoreBox disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   620
		].
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   621
	      ] ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   622
		warnSTXBox disable. 
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   623
		warnUnderscoreBox disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   624
		warnOldStyleBox disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   625
	      ]].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   626
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   627
    warnings onChangeSend:#check to:warnEnabler.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   628
    allowUnderscore onChangeSend:#check to:warnEnabler.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   629
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   630
    box := DialogBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   631
    box label:(resources string:'Compiler settings').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   632
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   633
    box addCheckBox:(resources string:'catch method redefinitions') on:catchRedefs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   634
    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
   635
    HistoryManager isNil ifTrue:[check disable].
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 addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   638
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   639
    ObjectFileLoader notNil ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   640
	compilationList := box addPopUpList:(resources string:'compilation to machine code') on:stcCompilation.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   641
	stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:2).
219
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
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   644
	component := box addTextLabel:(resources string:'stc include directories:').
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   645
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   646
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   647
	component := box addInputFieldOn:stcIncludes tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   648
	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
   649
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   650
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   651
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   652
	component := box addTextLabel:'stc defines:'.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   653
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   654
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   655
	component := box addInputFieldOn:stcDefines tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   656
	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
   657
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   658
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   659
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   660
	component := box addTextLabel:'stc options:'.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   661
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   662
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   663
	component := box addInputFieldOn:stcOptions tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   664
	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
   665
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   666
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   667
	y := box yPosition.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   668
	component := box addTextLabel:'stc C-libraries:'.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   669
	component width:0.5; adjust:#right; borderWidth:0.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   670
	box yPosition:y.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   671
	component := box addInputFieldOn:stcLibraries tabable:true.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   672
	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
   673
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   674
	box addVerticalSpace.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   675
	box addHorizontalLine.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   676
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   677
	"/ if there is no compiler around,
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   678
	"/ change to compile nothing, and disable the checkBoxes
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   679
	Compiler canCreateMachineCode ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   680
	    stcCompilation selectionIndex:3.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   681
	    compilationList disable.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   682
	].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   683
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   684
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   685
    box addCheckBox:(resources string:'allow underscore in identifiers') on:allowUnderscore.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   686
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   687
    box addCheckBox:(resources string:'literal arrays are immutable') on:immutableArrays.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   688
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   689
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   690
    box addCheckBox:(resources string:'warnings') on:warnings.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   691
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   692
    box leftIndent:30.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   693
    warnSTXBox := box addCheckBox:(resources string:'ST/X language extensions') on:warnSTX.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   694
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   695
    warnUnderscoreBox := box addCheckBox:(resources string:'underscores in identifiers') on:warnUnderscore.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   696
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   697
    warnOldStyleBox := box addCheckBox:(resources string:'oldStyle assignment') on:warnOldStyle.
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
    box leftIndent:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   700
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   701
    box addAbortButton; addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   702
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   703
    warnEnabler check.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   704
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   705
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   706
    box accepted ifTrue:[
232
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   707
	HistoryManager notNil ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   708
	    historyLines value ifTrue:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   709
		HistoryManager activate
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   710
	    ] ifFalse:[
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   711
		HistoryManager deactivate
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   712
	    ].
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   713
	].
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   714
	Class catchMethodRedefinitions:catchRedefs value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   715
	Compiler warnings:warnings value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   716
	Compiler warnSTXSpecials:warnSTX value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   717
	Compiler warnOldStyleAssignment:warnOldStyle value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   718
	Compiler warnUnderscoreInIdentifier:warnUnderscore value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   719
	Compiler allowUnderscoreInIdentifier:allowUnderscore value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   720
	Compiler arraysAreImmutable:immutableArrays value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   721
	Compiler stcCompilation:(stcCompilationOptions at:stcCompilation selectionIndex).
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   722
	Compiler stcCompilationIncludes:stcIncludes value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   723
	Compiler stcCompilationDefines:stcDefines value.
926e657541c9 *** empty log message ***
chrisy
parents: 230
diff changeset
   724
	Compiler stcCompilationOptions:stcOptions value.
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   725
	ObjectFileLoader notNil ifTrue:[
233
73a7f0118258 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 232
diff changeset
   726
	    ObjectFileLoader searchedLibraries:(stcLibraries value asCollectionOfWords).
73a7f0118258 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 232
diff changeset
   727
	]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   728
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   729
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   730
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   731
    "Modified: 10.9.1995 / 19:19:18 / claus"
228
5590115a282c no borders in labels
Claus Gittinger <cg@exept.de>
parents: 227
diff changeset
   732
    "Modified: 4.12.1995 / 01:11:23 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   733
!
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
keyboardSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   736
    |mappings listOfRawKeys listOfFunctions
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   737
     box l
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   738
     list1 list2 listView1 listView2 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   739
     frame selectionForwarder macroForwarder macroTextView y|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   740
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   741
    mappings := Screen current keyboardMap.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   742
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   743
    listOfRawKeys := (mappings keys asArray collect:[:key | key asString]) sort.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   744
    listOfFunctions := (mappings values asSet asArray collect:[:key | key asString]) sort.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   745
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   746
    selectionForwarder := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   747
    selectionForwarder respondTo:#showFunction
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   748
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   749
			|raw|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   750
			raw := list1 selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   751
			list2 retractInterrestFor:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   752
			list2 selection:(mappings at:raw asSymbol) asString.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   753
			list2 onChangeSend:#showRawKey to:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   754
		       ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   755
    selectionForwarder respondTo:#showRawKey
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   756
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   757
			|f raw|
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
			f := list2 selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   760
			list1 retractInterrestFor:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   761
			raw := mappings keyAtValue:f asString.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   762
			raw isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   763
			    raw := mappings keyAtValue:f first.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   764
			    raw isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   765
				raw := mappings keyAtValue:f asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   766
			    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   767
			].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   768
			list1 selection:raw.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   769
			list1 onChangeSend:#showFunction to:selectionForwarder.
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
    macroForwarder := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   773
    macroForwarder respondTo:#showMacro
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   774
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   775
			|f macro indent|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   776
			f := list2 selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   777
			(f startsWith:'Cmd') ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   778
			    f := f copyFrom:4
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   779
			].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   780
			macro := FunctionKeySequences at:(f asSymbol) ifAbsent:nil.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   781
			macro notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   782
			    macro := macro asStringCollection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   783
			    indent := macro
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   784
					 inject:99999 into:[:min :element |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   785
					     |stripped|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   786
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   787
					     stripped := element withoutLeadingSeparators.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   788
					     stripped size == 0 ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   789
						 min
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   790
					     ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   791
						 min min:(element size - stripped size)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   792
					     ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   793
					 ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   794
			    indent ~~ 0 ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   795
				macro := macro collect:[:line | 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   796
					     line size > indent ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   797
						line copyFrom:indent+1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   798
					     ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   799
						line
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   800
					     ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   801
					]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   802
			    ].                        
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   803
			].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   804
			macroTextView contents:macro.
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
    list1 := SelectionInList with:listOfRawKeys.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   808
    list1 onChangeSend:#showFunction to:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   809
    list2 := SelectionInList with:listOfFunctions.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   810
    list2 onChangeSend:#showRawKey to:selectionForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   811
    list2 onChangeSend:#showMacro to:macroForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   812
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   813
    box := Dialog new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   814
    box label:(resources string:'Keyboard mappings').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   815
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   816
    l := box addTextLabel:(resources string:'KEY_MSG') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   817
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   818
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   819
    frame := View new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   820
    frame extent:300 @ 300.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   821
    frame 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
    listView1 := ScrollableView for:SelectionInListView in:frame.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   824
    listView1 model:list1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   825
    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
   826
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   827
    listView2 := ScrollableView for:SelectionInListView in:frame.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   828
    listView2 model:list2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   829
    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
   830
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   831
    frame topInset:box yPosition.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   832
    box addComponent:frame withExtent:350@200.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   833
    box makeTabable:listView1. 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   834
    box makeTabable:listView2. 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   835
    frame origin:0.0@0.0 corner:1.0@0.6.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   836
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   837
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   838
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   839
    l := box addTextLabel:(resources string:'Macro text (if any):') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   840
    l adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   841
    l origin:0.0@0.6 corner:1.0@0.6.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   842
    l topInset:(View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   843
    l bottomInset:(l preferredExtent y negated - View viewSpacing).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   844
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   845
    macroTextView := HVScrollableView for:TextView miniScroller:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   846
    box addComponent:macroTextView tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   847
    macroTextView origin:0.0@0.6 corner:1.0@1.0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   848
    y := box yPosition.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   849
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   850
    box "addAbortButton;" addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   851
    macroTextView topInset:(l preferredExtent y + 5).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   852
    macroTextView bottomInset:(box preferredExtent y - y).
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 showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   855
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   856
    box accepted ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   857
	"no action yet ..."
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   858
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   859
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   860
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   861
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   862
languageSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   863
    |listOfLanguages box|
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
     hardwiring here is stupid - need a resource file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   867
     which lists languagenames which have all texts available
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   868
     in resource files ...
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
    listOfLanguages := #('english'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   871
			 'german'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   872
			 'french'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   873
			 'spanish'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   874
			 'italian'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   875
			).
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').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   879
    box list:listOfLanguages.
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 |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   882
	self withWaitCursorDo:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   883
	    Transcript showCr:'change language to ' , newLanguage , ' ...'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   884
	    Smalltalk at:#Language put:newLanguage asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   885
	    Smalltalk changed:#Language.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   886
	    ResourcePack flushCachedResourcePacks
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   887
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   888
	self reopenLauncher.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   889
    ].    
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   890
    box showAtPointer.
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   891
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   892
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   893
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   894
messageSettings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   895
    |box vmInfo vmErrors displayErrors classInfos|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   896
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   897
    vmInfo := ObjectMemory infoPrinting asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   898
    vmErrors := ObjectMemory debugPrinting asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   899
    classInfos := Object infoPrinting asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   900
    displayErrors := DeviceWorkstation errorPrinting asValue.
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
    box := DialogBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   903
    box label:(resources string:'Messages').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   904
"/    box extent:200@300.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   905
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   906
    box addCheckBox:(resources string:'VM info messages') on:vmInfo.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   907
    box addCheckBox:(resources string:'VM error messages') on:vmErrors.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   908
    box addHorizontalLine.
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 addCheckBox:(resources string:'Display error messages (Xlib, Xtlib ...)') on:displayErrors.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   911
    box addCheckBox:(resources string:'Other info messages') on:classInfos.
99
claus
parents: 98
diff changeset
   912
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   913
    box addAbortButton; addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   914
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   915
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   916
    box accepted ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   917
	ObjectMemory infoPrinting:vmInfo value.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   918
	ObjectMemory debugPrinting:vmErrors value.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   919
	Object infoPrinting:classInfos value.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   920
	DeviceWorkstation errorPrinting:displayErrors value.
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   921
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
   922
    box destroy
219
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   925
miscSettings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   926
    |box check logDoits shadows updChanges changeFileName
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   927
     loadBinaries compileLazy hostNameInLabel useManager y component|
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   928
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   929
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   930
    "/ extract relevant system settings ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   931
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   932
    logDoits := Smalltalk logDoits asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   933
    shadows := PopUpView shadows asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   934
    hostNameInLabel := StandardSystemView includeHostNameInLabel asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   935
    updChanges := Class updatingChanges asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   936
    changeFileName := ObjectMemory nameForChanges asValue.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   937
    useManager := (Smalltalk at:#SourceCodeManager) notNil asValue.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   938
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   939
    loadBinaries := Smalltalk loadBinaries asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   940
    compileLazy := Autoload compileLazy asValue.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   941
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   942
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   943
    "/ create a box on those values ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   944
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   945
    box := DialogBox new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   946
    box label:(resources string:'Other settings').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   947
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   948
    box addCheckBox:(resources string:'log compiles in changes file') on:updChanges.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   949
    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
   950
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   951
    y := box yPosition.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   952
    component := box addTextLabel:(resources string:'change file name:').
228
5590115a282c no borders in labels
Claus Gittinger <cg@exept.de>
parents: 227
diff changeset
   953
    component width:0.5; adjust:#right; borderWidth:0.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   954
    box yPosition:y.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   955
    component := box addInputFieldOn:changeFileName tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   956
    component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   957
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   958
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   959
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   960
    box addCheckBox:(resources string:'lazy compilation when autoloading') on:compileLazy.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   961
    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
   962
    ObjectFileLoader isNil ifTrue:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   963
        loadBinaries value:false.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   964
        check disable
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   965
    ].
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   966
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   967
    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
   968
    (AbstractSourceCodeManager isNil 
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   969
    or:[AbstractSourceCodeManager defaultManager isNil]) ifTrue:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   970
        useManager value:false.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   971
        check disable
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   972
    ].
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   973
    box addHorizontalLine.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   974
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   975
    box addCheckBox:(resources string:'shadows under popup views') on:shadows.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   976
    box addCheckBox:(resources string:'hostname in window labels') on:hostNameInLabel.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   977
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   978
    box addAbortButton; addOkButton.
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   979
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   980
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   981
    "/ show the box ...
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   982
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   983
    box showAtPointer.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   984
249
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   985
    "/
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   986
    "/ update system settings
cc5c4a442f49 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 245
diff changeset
   987
    "/
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
   988
    box accepted ifTrue:[
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   989
        Smalltalk logDoits:logDoits value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   990
        PopUpView shadows:shadows value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   991
        Class updateChanges:updChanges value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   992
        Autoload compileLazy:compileLazy value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   993
        Smalltalk loadBinaries:loadBinaries value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   994
        StandardSystemView includeHostNameInLabel:hostNameInLabel value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   995
        ObjectMemory nameForChanges:changeFileName value.
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   996
        useManager value ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   997
            (Smalltalk at:#SourceCodeManager) isNil ifTrue:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   998
                Smalltalk at:#SourceCodeManager put:(AbstractSourceCodeManager defaultManager)
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
   999
            ]
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1000
        ] ifFalse:[
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1001
            Smalltalk at:#SourceCodeManager put:nil
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1002
        ]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1003
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1004
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1005
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1006
    "Modified: 7.12.1995 / 20:05:23 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1007
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1008
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1009
viewStyleSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1010
    |listOfStyles resourceDir dir box 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1011
     list listView infoLabel infoForwarder newStyle|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1012
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1013
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1014
     search resources directory for a list of .style files ...
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
    resourceDir := Smalltalk getSystemFileName:'resources'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1018
    resourceDir isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1019
	self warn:'no styles found (missing ''resources'' directory)'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1020
	^ self
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
    dir := FileDirectory directoryNamed:resourceDir.
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
    listOfStyles := dir select:[:aFileName | aFileName endsWith:'.style'].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1025
    listOfStyles := listOfStyles collect:[:aFileName | aFileName copyWithoutLast:6].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1026
    listOfStyles sort.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1027
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1028
"/ old code: used a standard ListSelectionBox
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1029
"/ changed to intercept selection and add info-output.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1030
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1031
"/    box := ListSelectionBox title:(resources string:'STYLE_MSG') withCRs.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1032
"/    box label:(resources string:'Style selection').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1033
"/    box list:listOfStyles.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1034
"/    box initialText:View defaultStyle.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1035
"/    box selectAction:[:newStyle |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1036
"/    ].    
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1037
"/    box action:[:newStyle |
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1038
"/        transcript topView withCursor:Cursor wait do:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1039
"/            Transcript showCr:'change style to ' , newStyle , ' ...'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1040
"/            View defaultStyle:newStyle asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1041
"/        ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1042
"/    ].    
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1043
"/    box showAtPointer
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
"/ new code: build box 'by 'hand'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1046
"/
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1047
    infoForwarder := Plug new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1048
    infoForwarder respondTo:#showInfo
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1049
		  with:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1050
			|nm sheet comment|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1051
			nm := list selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1052
			sheet := ViewStyle fromFile:(nm , '.style').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1053
			comment := sheet at:#comment ifAbsent:''.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1054
			infoLabel label:comment withCRs asStringCollection
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1055
		       ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1056
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1057
    list := SelectionInList with:listOfStyles.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1058
    list onChangeSend:#showInfo to:infoForwarder.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1059
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1060
    box := Dialog new.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1061
    box label:(resources string:'Style selection').
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1062
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1063
    (box addTextLabel:(resources string:'STYLE_MSG') withCRs) borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1064
    listView := SelectionInListView on:list.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1065
    listView doubleClickAction:[:sel | box accept value:true. box hide].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1066
    listView height:200.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1067
    box addComponent:(ScrollableView forView:listView) tabable:true.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1068
    box addVerticalSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1069
227
4c0d12e2a3dc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 226
diff changeset
  1070
    (infoLabel := box addTextLabel:'\\' withCRs) adjust:#centerLeft; borderWidth:0.
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1071
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1072
    box addAbortButton; addOkButton.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1073
    list selection:(View defaultStyle).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1074
    box extent:(box preferredExtent).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1075
    box minExtent:box extent.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1076
    box maxExtent:box extent.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1077
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1078
    box showAtPointer.
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 accepted ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1081
	newStyle := list selection.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1082
	newStyle notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1083
	    self withWaitCursorDo:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1084
		Transcript showCr:'change style to ' , newStyle , ' ...'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1085
		View defaultStyle:newStyle asSymbol.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1086
	    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1087
	    self reopenLauncher.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1088
	]
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1089
    ].
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1090
    box destroy
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1091
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1092
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1093
!NewLauncher methodsFor:'actions - tools'!
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
fullScreenHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1096
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1097
     save the contents of the whole screen."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1098
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1099
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1100
	self saveScreenImage:(Image fromScreen) defaultName:'screen'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1101
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1102
!
99
claus
parents: 98
diff changeset
  1103
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1104
removeAllBreakAndTracePoints
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1105
    MessageTracer cleanup
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1108
screenHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1109
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1110
     let user specify a rectangular area on the screen
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1111
     and save its contents."
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1112
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1113
    |area|
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
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1116
	area := Rectangle fromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1117
	(area width > 0 and:[area height > 0]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1118
	    self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1119
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1120
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1121
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1122
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1123
startEventMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1124
    EventMonitor open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1125
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1126
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1127
startFullWindowTreeView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1128
    WindowTreeView open
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
startMemoryMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1132
    MemoryMonitor 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
startMemoryUsageView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1136
    MemoryUsageView 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
startProcessMonitor
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1140
    ProcessMonitor 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
startWindowTreeView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1144
    |v|
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
    v := self pickAView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1147
    v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1148
	WindowTreeView openOn:v topView
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1152
viewDestroy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1153
    "let user pick a view and destroy it.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1154
     Even allow destroying non-smalltalk views
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1155
     (also for views which I forgot due to some error)"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1156
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1157
    |device p v id|
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
    (Delay forSeconds:1) wait.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1160
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1161
    device := Screen current.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1162
    p :=  device pointFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1163
    id := device viewIdFromPoint:p.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1164
    v := device viewFromId:id.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1165
    v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1166
	v topView destroy.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1167
	^ self
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
    id = device rootView id ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1170
	^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1171
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1172
    (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
  1173
    ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1174
	device destroyView:nil withId:id
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1175
    ].
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
    "Modified: 18.9.1995 / 23:13:32 / claus"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1178
!
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
viewHardcopy
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1181
    "after a second (to allow redraw of views under menu ...),
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1182
     let user specify a view and save its contents."
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
    Processor addTimedBlock:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1185
	|v|
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
	v := Screen current viewFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1188
	v notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1189
	    self saveScreenImage:(Image fromView:(v topView)) defaultName:'hardcopy'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1190
	]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1191
    ] afterSeconds:1
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1192
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1193
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1194
viewInspect
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1195
    "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
  1196
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1197
    |v|
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
    v := self pickAView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1200
    v notNil ifTrue:[
226
4b050498fe46 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 219
diff changeset
  1201
"/        v topView inspect
4b050498fe46 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 219
diff changeset
  1202
	v inspect
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1203
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1204
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1205
! !
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
!NewLauncher methodsFor:'change & update'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1208
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1209
update:something with:aParameter from:changedObject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1210
    ((something == #currentProject)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1211
    or:[changedObject == Project]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1212
	self changed:#info.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1213
	^ self
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
! !
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
!NewLauncher methodsFor:'help'!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1218
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1219
helpTextFor:aComponent
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1220
    |sel s|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1221
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1222
    aComponent == transcript ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1223
	s := 'TRANSCRIPT_HELP'
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1226
    aComponent == infoView ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1227
	s := 'INFOVIEW_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1228
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1229
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1230
    (buttonPanel subViews includes:aComponent) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1231
	"kludge: look for its change selector"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1232
	sel := aComponent changeMessage.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1233
	sel == #startSystemBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1234
	    s := 'SBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1235
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1236
	sel == #startFileBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1237
	    s := 'FBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1238
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1239
	sel == #startChangesBrowser ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1240
	    s := 'CBROWSER_BUTTON_HELP'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1241
	].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1242
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1243
    s notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1244
	^ resources string:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1245
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1246
    ^ nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1247
! !
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1248
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1249
!NewLauncher methodsFor:'infoview update'!
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
info
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1252
    |project projectName projectDir packageName|
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
    (Project isNil or:[(project := Project current) isNil]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1255
	projectName := '* none *'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1256
	projectDir := '.'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1257
	packageName := '* none *'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1258
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1259
	projectName := project name.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1260
	projectDir := project directory.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1261
	packageName := project packageName.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1262
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1263
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1264
    ^ resources
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1265
	string:'project: ''%1''  fileOut to: ''%3''  package: ''%2'''
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1266
	  withArgs:(Array 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1267
			with:projectName
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1268
			with:packageName 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1269
			with:(projectDir contractTo:30))
99
claus
parents: 98
diff changeset
  1270
! !
claus
parents: 98
diff changeset
  1271
93
claus
parents: 92
diff changeset
  1272
!NewLauncher methodsFor:'initialize / release'!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1273
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1274
addTopViewsToCurrentProject
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1275
    "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
  1276
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1277
    ^ self
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1278
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1279
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1280
buttonPanelSpec
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1281
    "return a spec for the buttons in the panel;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1282
     entries consists of selector and bitmap-filename.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1283
     nil selectors are taken as separators (see setupButtonPanel)"
98
claus
parents: 96
diff changeset
  1284
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1285
    ^ #(
238
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1286
	#(startSystemBrowser 'SBrowser32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1287
	#(startFileBrowser   'FBrowser32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1288
"/        #(startWorkspace      'Workspace32x32.xbm')
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1289
	#(nil nil)
523cc1f36b1d release boxes - no Workspace button (its ugly)
Claus Gittinger <cg@exept.de>
parents: 233
diff changeset
  1290
	#(startChangesBrowser 'CBrowser32x32.xbm')
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1291
"/        #(nil nil)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1292
"/        #(nil nil)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1293
"/        #(startDocumentationTool 'book11.ico')
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1294
     )
230
6be247b9d815 workspace button
Claus Gittinger <cg@exept.de>
parents: 228
diff changeset
  1295
6be247b9d815 workspace button
Claus Gittinger <cg@exept.de>
parents: 228
diff changeset
  1296
    "Created: 4.12.1995 / 20:16:18 / cg"
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1297
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1298
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1299
closeRequest
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1300
    (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
  1301
	super closeRequest
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1302
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1303
!
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1304
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1305
focusSequence
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1306
    ^ (Array with:myMenu) 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1307
      , 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1308
      (buttonPanel subViews select:[:element | element isKindOf:Button])
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1309
"/      , (Array with:Transcript)
98
claus
parents: 96
diff changeset
  1310
!
claus
parents: 96
diff changeset
  1311
93
claus
parents: 92
diff changeset
  1312
openInterface
98
claus
parents: 96
diff changeset
  1313
    "sent by my superclass to open up my interface"
93
claus
parents: 92
diff changeset
  1314
claus
parents: 92
diff changeset
  1315
    |top icn w|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1316
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1317
    top := StandardSystemView new.
205
e3952eceab14 set iconLabel
Claus Gittinger <cg@exept.de>
parents: 192
diff changeset
  1318
    top label:'Smalltalk/X'; iconLabel:'ST/X Launcher'.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1319
    top extent:(400@300 ).
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1320
92
claus
parents: 91
diff changeset
  1321
    "
claus
parents: 91
diff changeset
  1322
     temporary kludge for SGI;
claus
parents: 91
diff changeset
  1323
     this will be moved into StandardSystemView and be done
claus
parents: 91
diff changeset
  1324
     automatically soon ...
claus
parents: 91
diff changeset
  1325
    "
106
claus
parents: 105
diff changeset
  1326
    Screen current serverVendor = 'Silicon Graphics' ifTrue:[
93
claus
parents: 92
diff changeset
  1327
	icn := self class aboutIcon.
92
claus
parents: 91
diff changeset
  1328
	icn notNil ifTrue:[
93
claus
parents: 92
diff changeset
  1329
	    icn := icn magnifiedTo:86@68.
92
claus
parents: 91
diff changeset
  1330
	    w := View extent:86@68. "/ icn extent.
claus
parents: 91
diff changeset
  1331
	    w viewBackground:icn.
claus
parents: 91
diff changeset
  1332
	    top iconView:w
claus
parents: 91
diff changeset
  1333
	]
claus
parents: 91
diff changeset
  1334
    ].
claus
parents: 91
diff changeset
  1335
93
claus
parents: 92
diff changeset
  1336
    self setupViewsIn:top.
98
claus
parents: 96
diff changeset
  1337
claus
parents: 96
diff changeset
  1338
    top application:self.   
claus
parents: 96
diff changeset
  1339
    builder window:top.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1340
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1341
    "
92
claus
parents: 91
diff changeset
  1342
     open with higher prio to allow interaction even while things
claus
parents: 91
diff changeset
  1343
     are running ...
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1344
    "
92
claus
parents: 91
diff changeset
  1345
    top openWithPriority:(Processor userSchedulingPriority + 1).
93
claus
parents: 92
diff changeset
  1346
!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1347
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1348
release
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1349
    infoProcess notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1350
	infoProcess terminate.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1351
	infoProcess := nil.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1352
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1353
    super release
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1354
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1355
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1356
restarted
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1357
    "image restart - since WindowGroup recreates the process with
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1358
     default prio, we have to raise the prio again.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1359
     Mhmh - this looks like a bug to me ..."
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1360
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1361
    Processor activeProcess priority:(Processor userSchedulingPriority + 1).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1362
    super restarted
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1363
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1364
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1365
saveAndTerminate
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1366
    "
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1367
     some windowManagers can send this, to shutDown an application
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1368
     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
  1369
     prepared for this ;-)"
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1370
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1371
    self snapshot.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1372
    super saveAndTerminate
103
claus
parents: 102
diff changeset
  1373
!
claus
parents: 102
diff changeset
  1374
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1375
setupButtonPanelIn:aTopView
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1376
    "create the buttonPanel"
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1377
107
claus
parents: 106
diff changeset
  1378
    |spc mh|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1379
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1380
    spc := View viewSpacing // 2.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1381
    buttonPanel := HorizontalPanelView in:aTopView.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1382
    buttonPanel level:-1; borderWidth:0.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1383
    buttonPanel horizontalLayout:#leftSpace.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1384
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1385
    self buttonPanelSpec do:[:entry |
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1386
	|sel b sep|
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1387
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1388
	sel := entry at:1.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1389
	sel isNil ifTrue:[
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1390
	    sep := View in:buttonPanel.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1391
	    sep extent:32@1; borderWidth:0.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1392
	] ifFalse:[
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1393
	    b := Button in:buttonPanel.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1394
	    b form:(Image fromFile:(entry at:2)).
100
claus
parents: 99
diff changeset
  1395
	    b model:self; changeMessage:sel
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1396
	]
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1397
    ].
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1398
100
claus
parents: 99
diff changeset
  1399
    mh := myMenu height.
claus
parents: 99
diff changeset
  1400
    buttonPanel origin:0.0 @ (mh + spc)
105
claus
parents: 104
diff changeset
  1401
		corner:(1.0 @ (mh + spc + buttonPanel preferredExtent y)).
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1402
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1403
    buttonPanel leftInset:spc; rightInset:spc.
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1404
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1405
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1406
setupDemoMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1407
    "setup the demo pulldown menu"
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1408
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1409
    |m|
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1410
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1411
    myMenu at:#demos 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1412
	   putLabels:(resources array:#(
91
claus
parents: 90
diff changeset
  1413
					'goodies'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1414
					'games'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1415
					'geometric designs'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1416
					'simple animations'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1417
					'3D graphics'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1418
					'graphic editors'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1419
				       ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1420
	   selectors:#(
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
					geometricDesigns
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1424
					simpleAnimations
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1425
					#'3Dgraphics'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1426
					#graphicEditors
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1427
		      )
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1428
	   receiver:self.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1429
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1430
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1431
     only to show two different ways of defining a popUpMenu,
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1432
     we use labels:selectors:receiver: here:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1433
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1434
    m := myMenu menuAt:#demos.
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1435
    m subMenuAt:#games
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1436
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1437
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1438
					   'Tetris'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1439
					   'Tic Tac Toe'
142
claus
parents: 140
diff changeset
  1440
					   'Tic Tac Toe (2 players)'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1441
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1442
		selectors:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1443
					   startTetris
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1444
					   startTicTacToe
142
claus
parents: 140
diff changeset
  1445
					   startTicTacToe2
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1446
			   )
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1447
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1448
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1449
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1450
     and labels:selector:args:receiver: here:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1451
    "
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1452
    m subMenuAt:#geometricDesigns
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1453
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1454
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1455
					   'Pen demo'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1456
					   'Commander demo'
116
claus
parents: 115
diff changeset
  1457
					   '-'     
115
claus
parents: 113
diff changeset
  1458
					   'Fractal plants demo'
116
claus
parents: 115
diff changeset
  1459
					   'Fractal patterns demo'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1460
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1461
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1462
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1463
					   PenDemo
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1464
					   CommanderDemo
116
claus
parents: 115
diff changeset
  1465
					   nil
115
claus
parents: 113
diff changeset
  1466
					   FractalPlantsDemo
116
claus
parents: 115
diff changeset
  1467
					   FractalPatternsDemo
91
claus
parents: 90
diff changeset
  1468
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1469
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1470
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1471
    m subMenuAt:#simpleAnimations 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1472
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1473
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1474
					   'Animation'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1475
					   'Globe demo'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1476
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1477
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1478
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1479
					   Animation
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1480
					   GlobeDemo
91
claus
parents: 90
diff changeset
  1481
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1482
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1483
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1484
    m subMenuAt:#'3Dgraphics' 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1485
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1486
		labels:(resources 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1487
			    array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1488
				'plane'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1489
				'tetra'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1490
				'cube (wireframe)'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1491
				'cube (solid)'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1492
				'sphere (wireframe)'
140
claus
parents: 136
diff changeset
  1493
				'doughnut (wireframe)'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1494
				'planet'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1495
				'teapot'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1496
				'logo'
108
claus
parents: 107
diff changeset
  1497
				'x/y graph'
140
claus
parents: 136
diff changeset
  1498
				'-'
claus
parents: 136
diff changeset
  1499
				'cube (light)'
claus
parents: 136
diff changeset
  1500
				'cube (light & texture)'
claus
parents: 136
diff changeset
  1501
				'sphere (light)'
190
a6278b31de11 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 185
diff changeset
  1502
				'colored octahedron'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1503
			     ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1504
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1505
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1506
				GLPlaneDemoView2
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1507
				GLTetraDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1508
				GLWireCubeDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1509
				GLCubeDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1510
				GLWireSphereDemoView
140
claus
parents: 136
diff changeset
  1511
				GLDoughnutDemoView
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1512
				GLPlanetDemoView
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1513
				GLTeapotDemo
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1514
				Logo3DView1
108
claus
parents: 107
diff changeset
  1515
				GLXYGraph
140
claus
parents: 136
diff changeset
  1516
				nil
claus
parents: 136
diff changeset
  1517
				GLCubeDemoView2
claus
parents: 136
diff changeset
  1518
				GLBrickCubeDemoView
claus
parents: 136
diff changeset
  1519
				GLSphereDemoView2
claus
parents: 136
diff changeset
  1520
				GLOctaHedronDemoView
91
claus
parents: 90
diff changeset
  1521
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1522
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1523
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1524
    m subMenuAt:#graphicEditors 
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1525
      put:(PopUpMenu
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1526
		labels:(resources array:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1527
					   'DrawTool'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1528
					   'LogicTool'
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1529
					 ))
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1530
		selector:#openDemo:
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1531
		args:#(
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1532
					   DrawTool
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1533
					   LogicTool
91
claus
parents: 90
diff changeset
  1534
		      )
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1535
		receiver:self).
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1536
91
claus
parents: 90
diff changeset
  1537
    m subMenuAt:#goodies 
claus
parents: 90
diff changeset
  1538
      put:(PopUpMenu
claus
parents: 90
diff changeset
  1539
		labels:(resources array:#(
claus
parents: 90
diff changeset
  1540
					'clock'
claus
parents: 90
diff changeset
  1541
					'calendar'
claus
parents: 90
diff changeset
  1542
					'-'
claus
parents: 90
diff changeset
  1543
					'mail tool'
claus
parents: 90
diff changeset
  1544
					'news tool'
claus
parents: 90
diff changeset
  1545
					))
claus
parents: 90
diff changeset
  1546
		selector:#openDemo:
claus
parents: 90
diff changeset
  1547
		args:#(
claus
parents: 90
diff changeset
  1548
					Clock 
claus
parents: 90
diff changeset
  1549
					Calendar 
claus
parents: 90
diff changeset
  1550
					nil
claus
parents: 90
diff changeset
  1551
					MailView 
claus
parents: 90
diff changeset
  1552
					NewsView
claus
parents: 90
diff changeset
  1553
		      )
claus
parents: 90
diff changeset
  1554
		receiver:self).
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1555
!
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1556
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1557
setupInfoViewIn:topView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1558
    |spc halfSpc|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1559
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1560
    spc := View viewSpacing.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1561
    infoView := Label label:'' in:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1562
    infoView adjust:#left; borderWidth:0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1563
    infoView level:-1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1564
    transcript superView bottomInset:(infoView height + spc).
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1565
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1566
    infoView is3D ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1567
	halfSpc := spc // 2.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1568
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1569
	halfSpc := 0
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1570
    ].
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1571
    infoView topInset:(infoView height negated - spc + transcript borderWidth);
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1572
	     bottomInset:halfSpc;
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1573
	     leftInset:halfSpc; 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1574
	     rightInset:halfSpc.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1575
    infoView origin:0.0 @ 1.0 corner:1.0 @ 1.0.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1576
    infoView model:self; aspect:#info; labelMessage:#info.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1577
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1578
    Project notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1579
	Project addDependent:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1580
    ]
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1581
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1582
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1583
     NewLauncher open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1584
    "
93
claus
parents: 92
diff changeset
  1585
!
claus
parents: 92
diff changeset
  1586
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1587
setupMenu
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1588
    "setup the pulldown menu"
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
    |l s icon|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1591
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1592
    myMenu labels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1593
				     'about'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1594
				     'file'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1595
				     'classes'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1596
				     'tools'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1597
				     'projects'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1598
				     'settings'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1599
				     'demos'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1600
				     'help')).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1601
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1602
     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
  1603
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1604
    icon := self class smallAboutIcon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1605
    icon notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1606
	myMenu labels at:1 put:icon.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1607
	myMenu height:(myMenu height max:(icon height + (View viewSpacing * 2)))
93
claus
parents: 92
diff changeset
  1608
    ].
219
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
    myMenu selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1611
				     #about
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1612
				     #file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1613
				     #classes 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1614
				     #tools 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1615
				     #projects 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1616
				     #settings
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1617
				     #demos
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1618
				     #help).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1619
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1620
    myMenu at:#about 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1621
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1622
					'about Smalltalk/X ...'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1623
				       ))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1624
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1625
					#about 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1626
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1627
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1628
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1629
    l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1630
		'file browser'
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
		'modules'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1633
		'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1634
		'snapshot'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1635
		'snapshot & exit'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1636
		'exit smalltalk'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1637
	 ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1638
    s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1639
		#startFileBrowser
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1640
		nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1641
		#objectModuleDialog 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1642
		nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1643
		#snapshot
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1644
		#snapshotAndExit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1645
		#exit
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1646
	 ).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1647
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1648
    myMenu at:#file
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1649
	   putLabels:(resources array:l)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1650
	   selectors:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1651
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1652
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1653
    myMenu at:#classes 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1654
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1655
					'system browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1656
					'class browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1657
					'full class browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1658
					'class hierarchy browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1659
					'class tree'
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
					'implementors'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1662
					'senders'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1663
					'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1664
					'change browser'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1665
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1666
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1667
					#startSystemBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1668
					#startClassBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1669
					#startFullClassBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1670
					#startClassHierarchyBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1671
					#startClassTreeView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1672
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1673
					#browseImplementors 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1674
					#browseSenders 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1675
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1676
					#startChangesBrowser 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1677
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1678
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1679
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1680
    myMenu at:#projects 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1681
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1682
					'new project'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1683
					'-'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1684
					'select project ...'
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
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1687
					#newProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1688
					nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1689
					#selectProject 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1690
		      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1691
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1692
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1693
    myMenu at:#settings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1694
	   putLabels:(resources array:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1695
					'language'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1696
					'show keyboard mappings'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1697
					'view style'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1698
					'messages'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1699
					'compilation'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1700
					'misc'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1701
					))
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1702
	   selectors:#(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1703
					#languageSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1704
					#keyboardSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1705
					#viewStyleSetting 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1706
					#messageSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1707
					#compilerSettings 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1708
					#miscSettings 
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
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1711
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1712
    self setupToolsMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1713
    self setupDemoMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1714
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1715
    ActiveHelp notNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1716
	l := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1717
		'\c active help'
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1718
		'ST/X documentation'
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
	s := #(
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1721
		#toggleActiveHelp:
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1722
		#startDocumentationTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1723
	      )
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1724
    ] ifFalse:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1725
	l := #(
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
		#startDocumentationTool
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1730
	      )
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
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1733
    myMenu at:#help 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1734
	   putLabels:(resources array:l)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1735
	   selectors:s
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1736
	   receiver:self.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1737
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1738
    (ActiveHelp notNil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1739
    and:[ActiveHelp isActive]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1740
	(myMenu menuAt:#help) checkToggleAt:#toggleActiveHelp: put:true
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1741
    ].
93
claus
parents: 92
diff changeset
  1742
!
claus
parents: 92
diff changeset
  1743
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1744
setupOtherViewsIn:aTopView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1745
    "a hook - allows redefinition in your personal subclass.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1746
     For example, add a clock:"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1747
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1748
"
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1749
    |sz clock space halfSpace|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1750
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1751
    sz := buttonPanel innerHeight - (buttonPanel level abs*2).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1752
    space := View viewSpacing.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1753
    halfSpace := space // 2.
93
claus
parents: 92
diff changeset
  1754
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1755
    buttonPanel rightInset:sz+(space  * 2).
93
claus
parents: 92
diff changeset
  1756
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1757
    clock := ClockView in:buttonPanel topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1758
    clock borderWidth:1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1759
    clock showSeconds:false.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1760
    clock extent:(sz @ sz).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1761
    clock origin:(1.0 @ (buttonPanel origin y + halfSpace)).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1762
    clock leftInset:sz negated - 2 - halfSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1763
    clock rightInset:halfSpace.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1764
    clock level:1.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1765
"
93
claus
parents: 92
diff changeset
  1766
!
claus
parents: 92
diff changeset
  1767
claus
parents: 92
diff changeset
  1768
setupToolsMenu
claus
parents: 92
diff changeset
  1769
    "setup the tools pulldown menu"
claus
parents: 92
diff changeset
  1770
claus
parents: 92
diff changeset
  1771
    |m|
claus
parents: 92
diff changeset
  1772
claus
parents: 92
diff changeset
  1773
    myMenu at:#tools 
claus
parents: 92
diff changeset
  1774
	   putLabels:(resources array:#(
claus
parents: 92
diff changeset
  1775
					'workspace'
claus
parents: 92
diff changeset
  1776
					'-'
claus
parents: 92
diff changeset
  1777
					'monitors'
claus
parents: 92
diff changeset
  1778
					'-'
claus
parents: 92
diff changeset
  1779
					'view tree (all views)'
claus
parents: 92
diff changeset
  1780
					'view tree'
claus
parents: 92
diff changeset
  1781
					'inspect view'
claus
parents: 92
diff changeset
  1782
					'destroy view'
claus
parents: 92
diff changeset
  1783
					'-'
claus
parents: 92
diff changeset
  1784
					'hardcopy'
120
claus
parents: 119
diff changeset
  1785
					'-'
claus
parents: 119
diff changeset
  1786
					'misc'
93
claus
parents: 92
diff changeset
  1787
					))
claus
parents: 92
diff changeset
  1788
	   selectors:#(
claus
parents: 92
diff changeset
  1789
					#startWorkspace 
claus
parents: 92
diff changeset
  1790
					nil
claus
parents: 92
diff changeset
  1791
					#monitors
claus
parents: 92
diff changeset
  1792
					nil
claus
parents: 92
diff changeset
  1793
					#startFullWindowTreeView 
claus
parents: 92
diff changeset
  1794
					#startWindowTreeView 
claus
parents: 92
diff changeset
  1795
					#viewInspect 
claus
parents: 92
diff changeset
  1796
					#viewDestroy 
claus
parents: 92
diff changeset
  1797
					nil
claus
parents: 92
diff changeset
  1798
					#hardcopy 
120
claus
parents: 119
diff changeset
  1799
					nil
claus
parents: 119
diff changeset
  1800
					#misc 
93
claus
parents: 92
diff changeset
  1801
		      )
claus
parents: 92
diff changeset
  1802
	   receiver:self.
claus
parents: 92
diff changeset
  1803
claus
parents: 92
diff changeset
  1804
claus
parents: 92
diff changeset
  1805
    m := myMenu menuAt:#tools.
claus
parents: 92
diff changeset
  1806
    m subMenuAt:#monitors 
claus
parents: 92
diff changeset
  1807
      put:(PopUpMenu
claus
parents: 92
diff changeset
  1808
		labels:(resources array:#(
claus
parents: 92
diff changeset
  1809
					   'process'
claus
parents: 92
diff changeset
  1810
					   'memory'
claus
parents: 92
diff changeset
  1811
					   'event'
claus
parents: 92
diff changeset
  1812
					   '-'
claus
parents: 92
diff changeset
  1813
					   'memory usage'
claus
parents: 92
diff changeset
  1814
					 ))
claus
parents: 92
diff changeset
  1815
		selectors:#(
claus
parents: 92
diff changeset
  1816
					#startProcessMonitor
claus
parents: 92
diff changeset
  1817
					#startMemoryMonitor 
claus
parents: 92
diff changeset
  1818
					#startEventMonitor 
claus
parents: 92
diff changeset
  1819
					nil
claus
parents: 92
diff changeset
  1820
					#startMemoryUsageView 
claus
parents: 92
diff changeset
  1821
			   )
claus
parents: 92
diff changeset
  1822
		receiver:self).
claus
parents: 92
diff changeset
  1823
120
claus
parents: 119
diff changeset
  1824
    m subMenuAt:#misc 
claus
parents: 119
diff changeset
  1825
      put:(PopUpMenu
claus
parents: 119
diff changeset
  1826
		labels:(resources array:#(
claus
parents: 119
diff changeset
  1827
					   'remove all break/trace points'
claus
parents: 119
diff changeset
  1828
					 ))
claus
parents: 119
diff changeset
  1829
		selectors:#(
claus
parents: 119
diff changeset
  1830
					#removeAllBreakAndTracePoints 
claus
parents: 119
diff changeset
  1831
			   )
claus
parents: 119
diff changeset
  1832
		receiver:self).
claus
parents: 119
diff changeset
  1833
93
claus
parents: 92
diff changeset
  1834
    m subMenuAt:#hardcopy 
claus
parents: 92
diff changeset
  1835
      put:(PopUpMenu
claus
parents: 92
diff changeset
  1836
		labels:(resources array:#(
claus
parents: 92
diff changeset
  1837
					   'screen'
claus
parents: 92
diff changeset
  1838
					   'area'
claus
parents: 92
diff changeset
  1839
					   'view'
claus
parents: 92
diff changeset
  1840
					 ))
claus
parents: 92
diff changeset
  1841
		selectors:#(
claus
parents: 92
diff changeset
  1842
					#fullScreenHardcopy
claus
parents: 92
diff changeset
  1843
					#screenHardcopy
claus
parents: 92
diff changeset
  1844
					#viewHardcopy
claus
parents: 92
diff changeset
  1845
			   )
claus
parents: 92
diff changeset
  1846
		receiver:self).
claus
parents: 92
diff changeset
  1847
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1848
!
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1849
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1850
setupTranscriptIn:aView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1851
    |v|
107
claus
parents: 106
diff changeset
  1852
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1853
    (Transcript notNil and:[Transcript ~~ Stderr]) ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1854
	Transcript topView destroy.
110
claus
parents: 109
diff changeset
  1855
    ].
claus
parents: 109
diff changeset
  1856
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1857
    v := HVScrollableView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1858
		for:TextCollector
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1859
		miniScrollerH:true 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1860
		miniScrollerV:false 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1861
		in:aView.
93
claus
parents: 92
diff changeset
  1862
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1863
    v origin:(0.0 @ (buttonPanel corner y + View viewSpacing)) 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1864
      corner:(1.0 @ 1.0).
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1865
    transcript := v scrolledView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1866
    transcript beTranscript.
94
claus
parents: 93
diff changeset
  1867
!
claus
parents: 93
diff changeset
  1868
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1869
setupViewsIn:topView 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1870
    "create the pulldown menu, buttonPanel and transcript view"
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1871
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1872
    |tFont|
131
claus
parents: 128
diff changeset
  1873
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1874
    topView model:self.
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1875
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1876
    myMenu := PullDownMenu in:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1877
    myMenu origin:0.0 @ 0.0 corner:(1.0 @ myMenu height).
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1878
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1879
    self setupMenu.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1880
    self setupButtonPanelIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1881
    self setupTranscriptIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1882
    self setupInfoViewIn:topView.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1883
    self setupOtherViewsIn:topView.
118
claus
parents: 117
diff changeset
  1884
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1885
    tFont := transcript font.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1886
    topView extent:(((tFont widthOf:'3')*60) max:myMenu preferredExtent x)
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1887
		    @ 
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1888
		    ((tFont height) * 20).
118
claus
parents: 117
diff changeset
  1889
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1890
    "
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1891
     NewLauncher open
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1892
    "
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1893
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1894
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1895
!NewLauncher methodsFor:'private'!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1896
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1897
pickAView
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1898
    |v|
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1899
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1900
    (Delay forSeconds:1) wait.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1901
    v := Screen current viewFromUser.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1902
    v isNil ifTrue:[
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1903
	self warn:'sorry, this is not a smalltalk view'.
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1904
	^ nil
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1905
    ].
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
106
claus
parents: 105
diff changeset
  1909
reopenLauncher
claus
parents: 105
diff changeset
  1910
    "for now (since style & language settings currently do
claus
parents: 105
diff changeset
  1911
     not affect living views ...)"
claus
parents: 105
diff changeset
  1912
claus
parents: 105
diff changeset
  1913
    |contents|
claus
parents: 105
diff changeset
  1914
claus
parents: 105
diff changeset
  1915
    contents := Transcript endEntry; contents.
claus
parents: 105
diff changeset
  1916
    self class open.
claus
parents: 105
diff changeset
  1917
    Transcript contents:contents; hideCursor; scrollToBottom; cursorToEnd; showCursor
claus
parents: 105
diff changeset
  1918
!
claus
parents: 105
diff changeset
  1919
100
claus
parents: 99
diff changeset
  1920
saveAllViews
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1921
    "tell each topview that we are going to terminate and give it chance
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1922
     to save its contents."
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1923
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1924
    ObjectMemory changed:#aboutToExit
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1925
!
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1926
93
claus
parents: 92
diff changeset
  1927
saveScreenImage:anImage defaultName:defaultName
claus
parents: 92
diff changeset
  1928
    "save an image into a file 
claus
parents: 92
diff changeset
  1929
     - ask user for filename using a fileSelectionBox."
claus
parents: 92
diff changeset
  1930
claus
parents: 92
diff changeset
  1931
    |fileName|
claus
parents: 92
diff changeset
  1932
claus
parents: 92
diff changeset
  1933
    fileName := Dialog
claus
parents: 92
diff changeset
  1934
		    requestFileName:'save image in:'
claus
parents: 92
diff changeset
  1935
		    default:(defaultName , '.tiff')
claus
parents: 92
diff changeset
  1936
		    ok:'save'
claus
parents: 92
diff changeset
  1937
		    abort:'abort'
claus
parents: 92
diff changeset
  1938
		    pattern:'*.tiff'.
claus
parents: 92
diff changeset
  1939
claus
parents: 92
diff changeset
  1940
    fileName notNil ifTrue:[
claus
parents: 92
diff changeset
  1941
	anImage saveOn:fileName
claus
parents: 92
diff changeset
  1942
    ].
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1943
! !
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1944
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1945
!NewLauncher methodsFor:'queries'!
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1946
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1947
processName
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1948
    "for monitors only - my name"
142
claus
parents: 140
diff changeset
  1949
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1950
    ^ 'ST/X Launcher'
90
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1951
! !
60d0bb749a1c *** empty log message ***
claus
parents: 89
diff changeset
  1952
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1953
!NewLauncher class methodsFor:'documentation'!
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1954
219
379dfea373d7 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 205
diff changeset
  1955
version
250
16612cb1c470 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 249
diff changeset
  1956
    ^ '$Header: /cvs/stx/stx/libtool/Launcher.st,v 1.65 1995-12-07 19:09:20 cg Exp $'
86
11b4ce85104e Initial revision
claus
parents:
diff changeset
  1957
! !