AbstractLauncherApplication.st
author penk
Fri, 15 Nov 2002 17:23:26 +0100
changeset 4258 20a0db92f04a
parent 4245 fe5535df5fb3
child 4287 feaec2b9cf67
permissions -rw-r--r--
new Settings next stage
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     1
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     2
 COPYRIGHT (c) 1997 by eXept Software AG
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     3
              All Rights Reserved
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     4
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     5
 This software is furnished under a license and may be used
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     6
 only in accordance with the terms of that license and with the
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     7
 inclusion of the above copyright notice. This software may not
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     8
 be provided or otherwise made available to, or used by, any
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
     9
 other person. No title to or ownership of the software is
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    10
 hereby transferred.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    11
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    12
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    13
2689
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    14
"{ Package: 'stx:libtool' }"
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    15
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
ToolApplicationModel subclass:#AbstractLauncherApplication
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    17
	instanceVariableNames:'transcript'
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    18
	classVariableNames:'NotifyingEmergencyHandler OpenLaunchers RegisteredMenuHandlers'
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    19
	poolDictionaries:''
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    20
	category:'Interface-Smalltalk'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    23
AbstractSettingsApplication subclass:#CompilerSettingsAppl
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    24
	instanceVariableNames:'modifiedChannel stcCompilationSelection catchMethodRedefs
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    25
		allowQualifiedNames warnDollar warnOldStyle stcCompilation
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    26
		fullDebugSupport warnCommonMistakes warnUnderscore keepSource
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    27
		constantFolding fullHistoryUpdate warnCompatibility
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    28
		constantFoldingOptions historyLines warnings warnSTX allowDollar
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    29
		allowReservedWordsAsSelectors immutableArrays
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    30
		allowOldStyleAssignment compileLazy allowUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    31
		allowDolphinExtensions warnUnusedVars keepSourceSelection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    32
		allowSqueakExtensions loadBinaries justInTimeCompilation
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    33
		canLoadBinaries constantFoldingSelection stcCompilationList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    34
		catchClassRedefs stcCompilerSettings enableUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    35
		enableDollar'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    36
	classVariableNames:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    37
	poolDictionaries:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    38
	privateIn:AbstractLauncherApplication
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    39
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    40
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    41
AbstractSettingsApplication subclass:#FontSettingsAppl
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    42
	instanceVariableNames:'modifiedChannel filter allOfThem labelDef buttonDef listDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    43
		menuDef textDef allFontLabelHolder buttonsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    44
		textFontLabelHolder labelsFontLabelHolder listsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    45
		menusFontLabelHolder allLabel buttonsLabel textLabel labelLabel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    46
		listsLabel menuLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    47
	classVariableNames:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    48
	poolDictionaries:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    49
	privateIn:AbstractLauncherApplication
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    50
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    51
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    52
AbstractSettingsApplication subclass:#KbdMappingSettingsAppl
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
    53
	instanceVariableNames:'modifiedChannel selectedRawKey macroTextHolder
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
    54
		selectedFunctionKey labelTextHolder functionKeyList rawKeyList
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
    55
		mappings'
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    56
	classVariableNames:''
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    57
	poolDictionaries:''
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    58
	privateIn:AbstractLauncherApplication
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    59
!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    60
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    61
AbstractSettingsApplication subclass:#LanguageSettingsAppl
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    62
	instanceVariableNames:'modifiedChannel languageHolder languageList listOfLanguages
4228
bb491a32fae5 *** empty log message ***
penk
parents: 4224
diff changeset
    63
		translatedLanguages noticeLabelHolder currentLanguageChannel
bb491a32fae5 *** empty log message ***
penk
parents: 4224
diff changeset
    64
		currentLanguageLabel'
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    65
	classVariableNames:''
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    66
	poolDictionaries:''
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    67
	privateIn:AbstractLauncherApplication
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    68
!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    69
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
Object subclass:#LauncherDialogs
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    71
	instanceVariableNames:''
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    72
	classVariableNames:''
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    73
	poolDictionaries:''
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
    74
	privateIn:AbstractLauncherApplication
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    77
AbstractSettingsApplication subclass:#MemorySettingsAppl
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    78
	instanceVariableNames:'modifiedChannel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    79
	classVariableNames:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    80
	poolDictionaries:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    81
	privateIn:AbstractLauncherApplication
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    82
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    83
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    84
AbstractSettingsApplication subclass:#PlainSettingsAppl
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    85
	instanceVariableNames:'modifiedChannel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    86
	classVariableNames:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    87
	poolDictionaries:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    88
	privateIn:AbstractLauncherApplication
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    89
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
    90
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    91
ApplicationModel subclass:#SettingsDialog
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
    92
	instanceVariableNames:'canvasHolder appList selectionHolder selection requestor
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
    93
		colOfInstances'
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    94
	classVariableNames:'ApplicationList'
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    95
	poolDictionaries:''
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    96
	privateIn:AbstractLauncherApplication
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    97
!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
    98
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
    99
AbstractSettingsApplication subclass:#StyleSettingsAppl
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
   100
	instanceVariableNames:'modifiedChannel showStandardStylesOnly styleList selectedStyle
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
   101
		styleDirectoryContents infoLabelHolder noticeLabelHolder'
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
   102
	classVariableNames:''
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
   103
	poolDictionaries:''
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
   104
	privateIn:AbstractLauncherApplication
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
   105
!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
   106
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
   107
AbstractSettingsApplication subclass:#SystemMessageSettingsAppl
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
   108
	instanceVariableNames:'modifiedChannel classInfos vmInfo vmErrors displayErrors'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
   109
	classVariableNames:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
   110
	poolDictionaries:''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
   111
	privateIn:AbstractLauncherApplication
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
   112
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
   113
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   114
AbstractSettingsApplication subclass:#ToolsSettingsAppl
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   115
	instanceVariableNames:'useNewVersionDiffBrowser transcriptBufferSize useNewInspector
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   116
		showClockInLauncher useNewChangesBrowser useNewFileBrowser
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   117
		useNewSystemBrowser currentUserPrefs modifiedChannel'
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   118
	classVariableNames:''
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   119
	poolDictionaries:''
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   120
	privateIn:AbstractLauncherApplication
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   121
!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   122
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   123
!AbstractLauncherApplication class methodsFor:'documentation'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   124
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   125
copyright
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   126
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   127
 COPYRIGHT (c) 1997 by eXept Software AG
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   128
              All Rights Reserved
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   129
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   130
 This software is furnished under a license and may be used
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   131
 only in accordance with the terms of that license and with the
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   132
 inclusion of the above copyright notice. This software may not
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   133
 be provided or otherwise made available to, or used by, any
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   134
 other person. No title to or ownership of the software is
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   135
 hereby transferred.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   136
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   137
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   138
!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   139
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   140
documentation
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   141
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   142
    This is an abstract class, providing mechanisms and common functionality
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   143
    for launcher-type applications. Subclasses may implement their GUI either
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   144
    with or without the UIPainter framework, and still use the common functions
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   145
    provided here.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   146
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   147
    [author:]
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   148
        Claus Gittinger, eXept Software AG
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   149
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   150
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   151
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   152
! !
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
!AbstractLauncherApplication class methodsFor:'accessing'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   156
closeAllLaunchers
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   157
    "close all opened launchers"
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   158
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   159
    self openLaunchers copy do:[:eachLauncher |
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   160
        eachLauncher closeRequest
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   161
    ].
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   162
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   163
    "
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   164
     self closeAllLaunchers.
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   165
     NewLauncher open
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   166
    "
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   167
!
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   168
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
    "return the launcher running on the current screen.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
     (for access via addMenu/ removeMenu)"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
    |currentScreen|
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
    OpenLaunchers size > 0 ifTrue:[
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   176
        currentScreen := Screen current.
2762
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   177
        ^ OpenLaunchers detect:[:eachLauncher | eachLauncher graphicsDevice == currentScreen] ifNone:nil
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
    ^ nil.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
    "
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   182
     NewLauncher current
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
    "Modified: / 9.9.1996 / 22:41:36 / stefan"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
    "Modified: / 13.10.1998 / 16:09:50 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
openLaunchers
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
    "return all opened launchers"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   191
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   192
    OpenLaunchers isNil ifTrue:[
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   193
        OpenLaunchers := IdentitySet new
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   194
    ].
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   195
    ^ OpenLaunchers
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
!AbstractLauncherApplication class methodsFor:'defaults'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
notifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
    "return a block (used as an emergency handler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
     for exceptions), which does errorNotification before going
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
     into the debugger."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
    "Remember the handlerBlock, to be able to determine if the current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
     handler is the notifying one."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
    NotifyingEmergencyHandler isNil ifTrue:[
2316
6a46309a5e43 NotifyingEmergencyHandler moved to NoHandlerError
Stefan Vogel <sv@exept.de>
parents: 2314
diff changeset
   209
        NotifyingEmergencyHandler := NoHandlerError notifyingEmergencyHandler
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
    ^ NotifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
    "Created: 7.1.1997 / 22:18:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
    "Modified: 15.1.1997 / 21:15:38 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   217
!AbstractLauncherApplication class methodsFor:'queries'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   218
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   219
isVisualStartable
2845
e7d49909cab3 language settings fixed
Claus Gittinger <cg@exept.de>
parents: 2838
diff changeset
   220
    "return true, if this application can be started via #open.
e7d49909cab3 language settings fixed
Claus Gittinger <cg@exept.de>
parents: 2838
diff changeset
   221
     (to allow start of a change browser via double-click in the browser)"
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   222
2762
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   223
    "/ assume all my subclasses can
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   224
    ^ self ~~ AbstractLauncherApplication
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   225
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   226
    "
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   227
     AbstractLauncherApplication isVisualStartable
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   228
     NewLauncher isVisualStartable
713cb2f6ad5c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2761
diff changeset
   229
    "
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   230
! !
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   231
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
!AbstractLauncherApplication methodsFor:'private'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   234
findApplicationClass:classOrClassName nameSpace:aNameSpace
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   235
    "find some application, given the classes name.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   236
     Look for it in Smalltalk and the given nameSpace"
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   237
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   238
    |cls|
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   239
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   240
    classOrClassName isBehavior ifTrue:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   241
        cls := classOrClassName.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   242
    ] ifFalse:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   243
        cls := Smalltalk at:classOrClassName asSymbol.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   244
        cls isNil ifTrue:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   245
            "/ look if its in the nameSpace
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   246
            aNameSpace notNil ifTrue:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   247
                cls := aNameSpace at:classOrClassName asSymbol
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   248
            ]
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   249
        ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   250
        cls isNil ifTrue:[
3037
0d452d54bf04 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3035
diff changeset
   251
            self warn:(resources string:'Sorry, the ''%1''-class is not available.' with:classOrClassName).
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   252
            ^ nil
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   253
        ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   254
    ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   255
    ^ cls
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   256
!
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   257
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   258
findWindow:title
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   259
    "a helper for find & destroy and find & raise operations;
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   260
     let user choose a view and return it; return nil on cancel"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   261
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   262
    ^ self findWindow:title windowGroupFilter:nil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   263
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   264
!
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   265
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   266
findWindow:title windowGroupFilter:windowGroupFilterOrNil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   267
    "a helper for find & destroy and find & raise operations;
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   268
     let user choose a view and return it; return nil on cancel"
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   269
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   270
    |knownTopViews nameList box|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   271
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   272
    knownTopViews := IdentitySet new.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   273
    Screen allScreens do:[:aScreen |
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   274
        aScreen knownViews do:[:aView |
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   275
            |top showIt wg|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   276
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   277
            aView notNil ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   278
                top := aView topView.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   279
                (top isKindOf:DebugView) ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   280
                    "/ although modal, show it.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   281
                    showIt := top realized
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   282
                ] ifFalse:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   283
                    wg := top windowGroup.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   284
                    showIt := (wg notNil and:[wg isModal not]).
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   285
                    showIt ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   286
                        windowGroupFilterOrNil notNil ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   287
                            showIt := windowGroupFilterOrNil includes:wg
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   288
                        ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   289
                    ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   290
                ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   291
                showIt ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   292
                    knownTopViews add:top
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   293
                ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   294
            ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   295
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   296
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   297
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   298
    knownTopViews := knownTopViews asOrderedCollection.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   299
    knownTopViews sort:[:v1 :v2 | |l1 l2|
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   300
                                l1 := v1 label ? 'aView'.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   301
                                l2 := v2 label ? 'aView'.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   302
                                l1 < l2
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   303
                       ].
2041
52cd1ca19280 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2040
diff changeset
   304
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   305
    nameList := knownTopViews collect:[:v | 
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   306
                                        |isDead wg p l|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   307
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   308
                                        l := v label ? 'aView'.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   309
                                        v device == Display ifFalse:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   310
                                            l := l , ' [' , (v device displayName ? '?') , ']'
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   311
                                        ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   312
                                        ((wg := v windowGroup) notNil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   313
                                        and:[(p := wg process) notNil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   314
                                        and:[p state ~~ #dead]]) ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   315
                                            l  
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   316
                                        ] ifFalse:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   317
                                            l , ' (dead ?)'
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   318
                                        ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   319
                                      ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   320
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   321
    box := ListSelectionBox new.
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   322
    box selectionChangeCallback:[:selectionIndex |   |v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   323
                                    v := knownTopViews at:box selectionIndex.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   324
                                    v raise. box raise 
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   325
                                ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   326
    box noEnterField.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   327
    box list:nameList.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   328
    box label:(resources string:'view selection').
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   329
    box title:(resources string:title) withCRs.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   330
    box action:[:selection |
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   331
        |v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   332
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   333
        v := knownTopViews at:box selectionIndex.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   334
        box destroy.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   335
        ^ v
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   336
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   337
    box extent:400@300.
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
   338
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   339
    ^ nil
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   340
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   341
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   342
openApplication: classOrClassName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   343
     "open an application, given by the classe name."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   344
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   345
    self openApplication:classOrClassName nameSpace:nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   346
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   347
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   348
openApplication:classOrClassName nameSpace:aNameSpace
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   349
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   350
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   351
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   352
    self openApplication:classOrClassName nameSpace:aNameSpace with:#open
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   353
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   354
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   355
openApplication:classOrClassName nameSpace:aNameSpace with:aSelector
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   356
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   357
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   358
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   359
    |cls|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   360
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   361
    cls := self findApplicationClass:classOrClassName nameSpace:aNameSpace.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   362
    cls isNil ifTrue:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   363
        ^ self
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   364
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   365
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   366
    Autoload autoloadFailedSignal handle:[:ex |
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   367
        self warn:(resources string:'Sorry, the %1 class seems to be not available.' with:cls name)
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   368
    ] do:[
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   369
        self withWaitCursorDo:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   370
            cls perform:aSelector
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   371
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   372
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   373
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   374
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   375
openSettings
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   376
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   377
    | builder|
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   378
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   379
    builder := SettingsDialog open.
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   380
    builder application requestor:self.
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   381
!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
   382
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   383
pickAView
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   384
    "let user pick a view and return it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   385
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   386
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   387
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   388
    (Delay forSeconds:1) wait.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   389
    v := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   390
    v isNil ifTrue:[
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   391
	self warn:'Sorry, this is not a smalltalk view'.
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   392
	^ nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   393
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   394
    ^ v
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   395
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   396
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   397
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   398
saveScreenImage:anImage defaultName:defaultName
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   399
    "save an image into a file 
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   400
     - ask user for filename using a fileSelectionBox."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   401
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   402
    |fileName|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   403
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   404
    fileName := Dialog
3782
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
   405
                    requestFileName:(resources string:'Save hardcopy image in:') 
3003
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   406
                    default:(defaultName , '.tiff')
3782
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
   407
                    ok:(resources string:'Save')
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
   408
                    abort:(resources string:'Cancel')
3003
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   409
                    pattern:'*.tiff'
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   410
                    fromDirectory:nil
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   411
                    whenBoxCreatedEvaluate:[:box | 
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   412
                                                |editButton|
4029
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   413
                                                UserPreferences current useNewFileDialog ifFalse:[
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   414
                                                    editButton := Button label:(resources string:'Edit').
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   415
                                                    (DialogBox styleSheet at:'dialogBox.okAtLeft' default:false) ifFalse:[
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   416
                                                        box addButton:editButton before:nil
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   417
                                                    ] ifTrue:[
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   418
                                                        box addButton:editButton after:nil
3003
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   419
                                                    ].
4029
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   420
                                                    editButton 
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   421
                                                        action:[ 
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   422
                                                            box hide; destroy.
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   423
                                                            ImageEditor openOnImage:anImage.
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   424
                                                        ].
32736ebb1068 no extra button for save screenshots for new fileDialog
penk
parents: 3992
diff changeset
   425
                                                ]
3003
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   426
                                           ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   427
    fileName notNil ifTrue:[
3003
74e2002951dc edit button in grab-screen area
Claus Gittinger <cg@exept.de>
parents: 2993
diff changeset
   428
        anImage saveOn:fileName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   429
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   430
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   431
    "Modified: / 21.2.1996 / 13:09:28 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   432
    "Created: / 29.1.1998 / 23:20:36 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   433
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   434
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
showDocumentation:aRelativeDocFilePath
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
    "open an HTML browser on some document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
     although that one is not yet finished,
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
     its better than nothing ...
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
    HTMLDocumentView notNil ifTrue:[
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   443
	self withWaitCursorDo:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   444
	    "
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   445
	     temporary kludge;
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   446
	     not all machines can autoload binaries;
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   447
	     however, on my SGI (which can) we want it
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   448
	     to load automatically.
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   449
	    "
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   450
	    HTMLDocumentView isLoaded ifFalse:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   451
		ErrorSignal catch:[HTMLDocumentView autoload]
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   452
	    ].
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   453
	    HTMLDocumentView isLoaded ifTrue:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   454
		HTMLDocumentView openFullOnDocumentationFile:aRelativeDocFilePath. 
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   455
		^ self
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   456
	    ].
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   457
	]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
    self warn:'Sorry, the ST/X HTML reader is not
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
included in this release.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   463
Please use Mosaic, netscape, chimera or any
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
other HTML viewer to see the documentation.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
The documentation is found in the ''doc/online'' directory.'.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
    "Modified: / 25.2.1998 / 21:24:20 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   469
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   470
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   471
!AbstractLauncherApplication methodsFor:'private - settings callBacks'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   472
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   473
changeViewStyleTo:newStyle
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   474
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   475
    newStyle notNil ifTrue:[
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   476
        self withWaitCursorDo:[
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   477
            (transcript ? Transcript) showCR:'change style to ' , newStyle , ' ...'.
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   478
            View defaultStyle:newStyle asSymbol.
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   479
        ].
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   480
        self reopenLauncher.
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   481
        DebugView newDebugger.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   482
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   483
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   484
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   485
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   486
fontBoxForEncoding:encodingMatch
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   487
    "open a fontBox, showing fonts which match some encoding
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   488
     (used when changing to japanese ...)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   489
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
   490
    ^ LauncherDialogs fontBoxForEncoding:encodingMatch
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   491
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   492
"/    |box y b
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   493
"/     labelDef buttonDef listDef menuDef textDef
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   494
"/     models labels allOfThem filter|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   495
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   496
"/    encodingMatch notNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   497
"/        filter := [:f | f encoding notNil 
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   498
"/                        and:[encodingMatch match:f encoding]].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   499
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   500
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   501
"/    models := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   502
"/    labels := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   503
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   504
"/    models add:(allOfThem := nil asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   505
"/    models add:(labelDef := Label defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   506
"/    models add:(buttonDef := Button defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   507
"/    models add:(listDef := SelectionInListView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   508
"/    models add:(menuDef := MenuView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   509
"/    models add:(textDef := TextView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   510
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   511
"/    box := Dialog new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   512
"/    box label:(resources string:'Font settings').
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   513
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   514
"/    models
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   515
"/    with:(resources array:#('all' 'labels' 'buttons' 'lists' 'menus' 'edit text'))
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   516
"/    do:[:model :title |
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   517
"/        |y2 lbl f i|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   518
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   519
"/        f := model value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   520
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   521
"/        (box addTextLabel:title) adjust:#left.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   522
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   523
"/        y := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   524
"/        b := box addComponent:(Button label:(resources string:'change ...')) tabable:true.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   525
"/        b relativeExtent:nil; extent:(b preferredExtent).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   526
"/        y2 := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   527
"/        box yPosition:y.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   528
"/        i := box leftIndent.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   529
"/        box leftIndent:(b widthIncludingBorder + View viewSpacing).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   530
"/        (lbl := box addTextLabel:'')
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   531
"/            adjust:#left;
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   532
"/            font:(model value);
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   533
"/            labelChannel:(BlockValue 
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   534
"/                            with:[:v | |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   535
"/                                f := v value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   536
"/                                f isNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   537
"/                                    ''
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   538
"/                                ] ifFalse:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   539
"/                                    f userFriendlyName
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   540
"/                                ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   541
"/                            ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   542
"/                            argument:model).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   543
"/        labels add:lbl.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   544
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   545
"/        box leftIndent:i.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   546
"/        box yPosition:(box yPosition max:y2).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   547
"/        box addVerticalSpace.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   548
"/        box addHorizontalLine.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   549
"/        box addVerticalSpace.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   550
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   551
"/        b action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   552
"/            |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   553
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   554
"/            f := FontPanel 
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   555
"/                fontFromUserInitial:(model value) 
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   556
"/                              title:(resources string:'font for %1' with:title)
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   557
"/                             filter:filter.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   558
"/            f notNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   559
"/                model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   560
"/                    models do:[:m | m value:f].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   561
"/                    labels do:[:l | l font:f]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   562
"/                ] ifFalse:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   563
"/                    model value:f.  
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   564
"/                    lbl font:f.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   565
"/                ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   566
"/            ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   567
"/        ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   568
"/        model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   569
"/            box addVerticalSpace
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   570
"/        ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   571
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   572
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   573
"/    box addAbortButton; addOkButton.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   574
"/    (box addButton:(Button label:(resources string:'defaults')) before:nil)
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   575
"/        action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   576
"/            "/ fetch defaults
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   577
"/            View readStyleSheetAndUpdateAllStyleCaches.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   578
"/            labelDef value: Label defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   579
"/            buttonDef value: Button defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   580
"/            listDef value: SelectionInListView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   581
"/            menuDef value: MenuView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   582
"/            textDef value: TextView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   583
"/        ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   584
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   585
"/    box open.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   586
"/    box accepted ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   587
"/        Label defaultFont:labelDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   588
"/        Button defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   589
"/        Toggle defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   590
"/        SelectionInListView defaultFont:listDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   591
"/        MenuView defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   592
"/        PullDownMenu defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   593
"/        TextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   594
"/        EditTextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   595
"/        CodeView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   596
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   597
"/    box destroy.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
   598
"/    ^ box accepted
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   599
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   600
    "Modified: / 15.9.1998 / 22:04:56 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   601
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   602
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   603
reopenLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   604
    "reopen a new launcher.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   605
     for now (since style & language settings currently do
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   606
     not affect living views ...)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   607
     WARNING: bad design: Message known in LauncherDialogs"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   608
2034
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   609
    |oldOrigin contents builder newLauncher|
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   610
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   611
    oldOrigin := self window origin.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   612
    transcript notNil ifTrue:[contents := transcript endEntry; list].
2034
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
   613
    builder := self class openAt:oldOrigin.
3787
88b39d2d33d8 tzpe on dialog label
Claus Gittinger <cg@exept.de>
parents: 3782
diff changeset
   614
    builder window waitUntilVisible; origin:oldOrigin.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   615
    newLauncher := builder application.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   616
    transcript notNil ifTrue:[
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   617
        newLauncher transcript list:contents; hideCursor; scrollToBottom; cursorToEnd; showCursor.
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
   618
    ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   619
    ^ newLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   620
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   621
    "Modified: / 4.8.1998 / 17:08:33 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   622
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   623
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   624
!AbstractLauncherApplication methodsFor:'queries'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   625
3410
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
   626
bugReporterAvailable
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
   627
    ^ BugGUI notNil
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
   628
!
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
   629
3120
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
   630
hasPDALauncher
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
   631
    ^ PDALauncher notNil
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
   632
!
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
   633
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   634
processName
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   635
    "for monitors only - my name"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   636
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   637
    ^ 'ST/X Launcher'
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   638
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   639
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   640
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   641
remoteImageBrowserAvailable
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   642
    ^ SmalltalkShareClient notNil and:[RemoteImage notNil]
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   643
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   644
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   645
transcript
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   646
    "my transcript"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   647
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   648
    transcript isNil ifTrue:[
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   649
        ^ Transcript current
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   650
    ].
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   651
    ^ transcript 
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   652
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   653
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   654
!AbstractLauncherApplication methodsFor:'startup / release'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   655
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   656
addTopViewsToCurrentProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   657
    "ignored here - the launcher is always global (i.e. not project private)."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   658
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   659
    ^ self
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   660
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   661
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   662
2314
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   663
closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   664
    OpenLaunchers remove:self ifAbsent:nil.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   665
    super closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   666
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   667
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   668
postBuildWith:aBuilder
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   669
    super postBuildWith:aBuilder.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   670
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   671
    OpenLaunchers isNil ifTrue:[
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   672
        OpenLaunchers := IdentitySet new.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   673
    ].
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   674
    OpenLaunchers add:self
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   675
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   676
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
   677
2040
06dd0e21aae0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2038
diff changeset
   678
requestForWindowClose
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   679
    "close request from windowing system (window close);
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   680
     confirm and ask if closing of launcher only or
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   681
     a smalltalk-exit is wanted"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   682
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   683
    |answer|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   684
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   685
    answer := Dialog 
3738
fc625b46878b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3690
diff changeset
   686
                confirmWithCancel:(resources string:'Close %1 only or Exit Smalltalk (Close all) ?' with:self class name)
2165
Claus Gittinger <cg@exept.de>
parents: 2164
diff changeset
   687
                labels:(resources array:#('Cancel' 'Close' 'Exit'))
Claus Gittinger <cg@exept.de>
parents: 2164
diff changeset
   688
                default:3.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   689
    answer isNil ifTrue:[
2165
Claus Gittinger <cg@exept.de>
parents: 2164
diff changeset
   690
        "/ cancel
Claus Gittinger <cg@exept.de>
parents: 2164
diff changeset
   691
        ^ false
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   692
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   693
2165
Claus Gittinger <cg@exept.de>
parents: 2164
diff changeset
   694
    answer == false ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 2164
diff changeset
   695
        ^ true
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   696
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   697
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   698
    self exit
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   699
2160
028c1d5740e5 exit smalltalk is now the default, when closing the launcher.
Claus Gittinger <cg@exept.de>
parents: 2149
diff changeset
   700
    "Modified: / 20.5.1999 / 17:24:47 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   701
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   702
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   703
saveAndTerminateRequest
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   704
    "some windowManagers can send this, to shutDown an application
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   705
     but let it save its state before, for later restart. 
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   706
     Although I have not yet encountered such a windowManager,
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   707
     we are already prepared for this ;-)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   708
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   709
    self snapshot.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   710
    super saveAndTerminateRequest
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   711
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   712
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   713
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   714
!AbstractLauncherApplication methodsFor:'user actions - about'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   715
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   716
openLicenseConditions
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   717
    "open an HTML browser on the 'LICENCE' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   718
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   719
    self withWaitCursorDo:[
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   720
	|lang doc|
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   721
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   722
	Smalltalk releaseIdentification = 'ST/X_free_demo_vsn' ifTrue:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   723
	    doc := 'english/LICENCE_DEMO_STX.html'
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   724
	] ifFalse:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   725
	    ((lang := Smalltalk language) = 'de'
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   726
	    or:[lang = 'german']) ifTrue:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   727
		doc := 'german/LICENCE_STX.html'
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   728
	    ] ifFalse:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   729
		doc := 'english/LICENCE_STX.html'
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   730
	    ].
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   731
	].
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   732
	doc := resources at:'LICENCEFILE' default:doc.
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
   733
	self showDocumentation:('../' , doc)
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   734
    ]
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   735
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   736
    "Created: / 5.2.1998 / 21:43:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   737
    "Modified: / 23.4.1998 / 11:45:53 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   738
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   739
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   740
!AbstractLauncherApplication methodsFor:'user actions - classes'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   741
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   742
browseAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   743
    "open a browser showing all breakPointed/traced methods
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   744
     (but, to get rid of them, there is also a menu itme to remove them all)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   745
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   746
    UserPreferences systemBrowserClass
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   747
        browseMethods:(WrappedMethod allInstances)
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   748
        title:'all breakPointed/traced methods'
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   749
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   750
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   751
browseImplementors
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   752
    "open an implementors- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   753
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   754
    |selector|
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   755
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   756
    selector := Dialog 
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   757
                    requestSelector:(resources at:'Browse implementors of (Tab for completion):') 
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
   758
                    okLabel:(resources at:'Browse')
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   759
                    initialAnswer:''.
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   760
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   761
    selector size > 0 ifTrue:[
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   762
        self withWaitCursorDo:[
4155
b62b378443df checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4127
diff changeset
   763
            UserPreferences systemBrowserClass browseImplementorsMatching:selector
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   764
        ]  
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   765
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
   766
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
   767
    "Modified: / 17.11.2001 / 16:33:28 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   768
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   769
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   770
browseResources
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   771
    "open a resource- browser after asking for a resource string"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   772
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   773
    |box resourceHolder valueHolder component rsrc value t anyString|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   774
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   775
    anyString := resources string:'* any *'.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   776
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   777
    resourceHolder := ValueHolder newString.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   778
    valueHolder := '*' asValue.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   779
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   780
    box := DialogBox new.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   781
    box label:(resources at:'Resource search:').
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   782
    component := box addTextLabel:(resources at:'Search for methods which contain a\particular resource specification') withCRs.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   783
    component adjust:#left.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   784
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   785
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   786
    component := box addTextLabel:(resources at:'Resource symbol (empty for any; no matchPattern allowed):') withCRs.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   787
    component adjust:#left.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   788
    component :=  box addComboBoxOn:resourceHolder tabable:true.
3014
cb531619c185 Don't use obsolete methods.
Stefan Vogel <sv@exept.de>
parents: 3003
diff changeset
   789
    component list:((Array with:anyString) , #('canvas' 'menu' 'keyboard' 'style' 'image' 'programMenu' '-' 'obsolete' 'needsFix')).
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   790
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   791
    component := box addTextLabel:(resources at:'Resource value (* for any; matchPattern is allowed):') withCRs.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   792
    component adjust:#left.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   793
    box addInputFieldOn:valueHolder tabable:true.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   794
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   795
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   796
    box addHelpButtonFor:'programming/language.html#RESOURCEDEFS'.
2048
f8c010698b75 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
   797
    box addAbortAndOkButtons.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   798
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
   799
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   800
    box destroy.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   801
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   802
    box accepted ifTrue:[
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   803
        rsrc := resourceHolder value.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   804
        value := valueHolder value.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   805
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   806
        (rsrc size == 0 or:[rsrc = '*' or:[rsrc = anyString]]) ifTrue:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   807
            t := 'methods with any resource'.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   808
            rsrc := nil
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   809
        ] ifFalse:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   810
            t := 'methods with #' , rsrc , '-resource'.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   811
            rsrc := rsrc withoutSeparators asSymbol
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   812
        ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   813
        (value size == 0 or:[value = '*']) ifTrue:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   814
            t := t , ' and any value'.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   815
            value := nil
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   816
        ] ifFalse:[
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   817
            t := t , ' and value ' , value.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   818
        ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   819
        self withWaitCursorDo:[
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   820
            UserPreferences systemBrowserClass
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   821
                browseForResource:rsrc
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   822
                containing:value
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   823
                in:(Smalltalk allClasses)
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   824
                title:t
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   825
        ]  
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   826
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   827
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   828
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   829
browseSenders
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   830
    "open a senders- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   831
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   832
    |selector|
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   833
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   834
    selector := Dialog 
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   835
                    requestSelector:(resources at:'Browse senders of (Tab for completion):') 
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
   836
                    okLabel:(resources at:'Browse')
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   837
                    initialAnswer:''.
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
   838
    selector size > 0 ifTrue:[
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   839
        self withWaitCursorDo:[
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   840
            UserPreferences systemBrowserClass
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   841
                browseAllCallsOn:selector
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   842
        ]  
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   843
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
   844
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
   845
    "Modified: / 17.11.2001 / 16:33:42 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   846
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   847
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   848
browseUnboundGlobals
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   849
    "open a browser on methods refering to unbound global variables"
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   850
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   851
    self withWaitCursorDo:[
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   852
        UserPreferences systemBrowserClass
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   853
            browseReferendsOfUnboundGlobalsWithTitle:(resources string:'References to unbound global variables')
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   854
            warnIfNone:true
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   855
    ]
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   856
!
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   857
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   858
browseUndeclared
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   859
    "open a browser on methods refering to undeclared variables"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   860
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   861
    self withWaitCursorDo:[
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   862
        UserPreferences systemBrowserClass
3778
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
   863
            browseReferendsOf:(Smalltalk undeclaredPrefix , '*')
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
   864
            title:(resources string:'References to undeclared variables')
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   865
            warnIfNone:true
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   866
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   867
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   868
3778
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
   869
clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
   870
    "remove all undeclared variables"
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
   871
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
   872
    Smalltalk clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
   873
!
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
   874
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   875
removeAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   876
    "remove all break- and trace points"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   877
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   878
    self withCursor:Cursor execute do:[ MessageTracer cleanup]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   879
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   880
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   881
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   882
startClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   883
    "open a classBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   884
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   885
    UserPreferences systemBrowserClass askThenBrowseClass
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   886
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   887
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   888
startClassBrowserOnChangedClasses
2854
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   889
    "open a classBrowser on the changeSet"
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   890
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   891
    NewSystemBrowser isNil ifTrue:[
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   892
        ^ self warn:'This needs the NewSystemBrowser to be loaded.'
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   893
    ].
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   894
    NewSystemBrowser openOnClassesInChangeSet
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   895
!
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
   896
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   897
startClassBrowserOnChangedMethods
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   898
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   899
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   900
    NewSystemBrowser isNil ifTrue:[
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   901
        ^ self warn:'This needs the NewSystemBrowser to be loaded.'
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   902
    ].
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   903
    NewSystemBrowser openOnMethodsInChangeSet
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   904
!
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   905
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   906
startClassBrowserOnChanges
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   907
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   908
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   909
    ^ self startClassBrowserOnChangedClasses
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   910
!
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
   911
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   912
startClassHierarchyBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   913
    "open a classHierarchyBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   914
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   915
    UserPreferences systemBrowserClass askThenBrowseClassHierarchy
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   916
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   917
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   918
startFullClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   919
    "open a fullClass systemBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   920
3140
1f85ff8a1a22 UserPreference access
Claus Gittinger <cg@exept.de>
parents: 3120
diff changeset
   921
    UserPreferences systemBrowserClass askThenBrowseFullClassProtocol
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   922
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   923
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   924
startRemoteImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   925
    "open a remoteImage browser; asks for hostname.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   926
     The remote host must have an st/x running with remote browsing enabled.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   927
     Sorry, for now, only the old browser can be used this way."
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   928
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   929
    |hostName|
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   930
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   931
    hostName := Dialog request:'Remote Host:'.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   932
    SystemBrowser openOnRemoteImageOnHost:hostName port:nil.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   933
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   934
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   935
startSnapshotImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   936
    "open a snapshotImage browser; asks for filename.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   937
     Sorry, for now, only the old browser can be used this way."
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   938
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   939
    |imageFileName|
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   940
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   941
    imageFileName := Dialog requestFileName:'Name of Snapshot Image File:' default:'st.img' pattern:'*.img;*.sav'.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
   942
    SystemBrowser openOnSnapShotImage:imageFileName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   943
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   944
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   945
!AbstractLauncherApplication methodsFor:'user actions - demos'!
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   946
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   947
startPDALauncher
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   948
    self startRemoteLauncherWithSetup:[:newDisplay | newDisplay bePDA].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   949
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   950
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   951
startRemoteLauncher
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   952
    self startRemoteLauncherWithSetup:[:newDisplay | ].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   953
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   954
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   955
startRemoteLauncherWithSetup:aSetupBlock
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
   956
    |host remoteDisplay remoteDisplayClass|
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   957
2620
fe33eeb9d2ad *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2609
diff changeset
   958
    host := Dialog 
fe33eeb9d2ad *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2609
diff changeset
   959
                request:(resources string:'Remote Launcher on which display:')
3215
5782487c2f48 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
   960
                initialAnswer:'{hostName}:0'
5782487c2f48 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3180
diff changeset
   961
                initialSelection:(1 to:10).
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   962
    host size > 0 ifTrue:[
2359
7432181f17a1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
   963
        (host includes:$:) ifFalse:[
7432181f17a1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
   964
            host := (host , ':0')
7432181f17a1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
   965
        ].
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
   966
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
   967
        remoteDisplayClass := XWorkstation.
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
   968
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   969
"/        "/ Q: should we allow GL graphics on the remote display
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   970
"/        "/ (Problem: the GL library is not threadsafe, when multiple-display connections
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   971
"/        "/ are open - leading to mixing output between views ...)
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   972
"/
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   973
"/        "/ only simulated GL can be done remote (i.e. not on SGI)
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   974
"/        (Screen current supportsGLDrawing 
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   975
"/        and:[Screen current isTrueGL not])
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   976
"/        ifTrue:[
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   977
"/            remoteDisplayClass := GLXWorkstation.
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   978
"/        ].
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   979
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
   980
        [
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
   981
            remoteDisplay := remoteDisplayClass newDispatchingFor:host.
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
   982
        ] on:Screen deviceOpenErrorSignal do:[:ex|
2359
7432181f17a1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
   983
            self warn:'Could not connect to display: ''' , host , '''.'.
7432181f17a1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
   984
            ^ self
7432181f17a1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2331
diff changeset
   985
        ].
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
   986
        aSetupBlock value:remoteDisplay.
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   987
        Screen currentScreenQuerySignal 
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   988
            answer:remoteDisplay
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   989
            do:[
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   990
                self class open.
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
   991
            ]
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   992
    ].
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   993
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   994
    "Created: / 10.9.1998 / 11:48:42 / cg"
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   995
! !
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
   996
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   997
!AbstractLauncherApplication methodsFor:'user actions - file'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   998
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   999
objectModuleDialog
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1000
    "opens a moduleInfo dialog"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1001
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1002
    ^ LauncherDialogs objectModuleDialog
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1003
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1004
    "Modified: / 31.7.1998 / 17:33:24 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1005
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1006
2490
924e607d11d8 first version of a package dialog
Claus Gittinger <cg@exept.de>
parents: 2462
diff changeset
  1007
packageDialog
924e607d11d8 first version of a package dialog
Claus Gittinger <cg@exept.de>
parents: 2462
diff changeset
  1008
    "opens a package dialog"
924e607d11d8 first version of a package dialog
Claus Gittinger <cg@exept.de>
parents: 2462
diff changeset
  1009
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1010
    ^ LauncherDialogs packageDialog
2490
924e607d11d8 first version of a package dialog
Claus Gittinger <cg@exept.de>
parents: 2462
diff changeset
  1011
924e607d11d8 first version of a package dialog
Claus Gittinger <cg@exept.de>
parents: 2462
diff changeset
  1012
    "Modified: / 31.7.1998 / 17:33:24 / cg"
924e607d11d8 first version of a package dialog
Claus Gittinger <cg@exept.de>
parents: 2462
diff changeset
  1013
!
924e607d11d8 first version of a package dialog
Claus Gittinger <cg@exept.de>
parents: 2462
diff changeset
  1014
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1015
saveImageAs: aFileName
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1016
    "save image in aFilename"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1017
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1018
    aFileName notNil ifTrue:[
2621
a79f619e7538 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2620
diff changeset
  1019
        self withCursor:Cursor write do:[
a79f619e7538 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2620
diff changeset
  1020
            (ObjectMemory snapShotOn:aFileName) ifFalse:[
a79f619e7538 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2620
diff changeset
  1021
                self warn:('Failed to save snapshot image (disk full or not writable)').
a79f619e7538 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2620
diff changeset
  1022
            ]
a79f619e7538 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2620
diff changeset
  1023
        ].
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1024
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1025
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1026
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1027
!AbstractLauncherApplication methodsFor:'user actions - help'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1028
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1029
showBookPrintDocument
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1030
    "open an HTML browser on the 'book'-printing document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1031
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1032
    self showDocumentation:'BOOK.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1033
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1034
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1035
startClassDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1036
    "open an HTML browser on the 'classDoc/TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1037
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1038
    self showDocumentation:'classDoc/TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1039
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1040
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1041
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1042
startDocumentationIndex
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1043
    "open an HTML browser on the 'index' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1044
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1045
    self showDocumentation:'index.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1046
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1047
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1048
startDocumentationTool
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1049
    "open an HTML browser on the 'TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1050
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1051
    self showDocumentation:'TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1052
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1053
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1054
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1055
startWhatsNewDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1056
    "open an HTML browser on the 'whatsNew.html' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1057
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1058
    self showDocumentation:'whatsNew.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1059
2296
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1060
!
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1061
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1062
startWhatsNewSTX
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1063
    "open an HTML browser on the 'relNotes.html' document"
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1064
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1065
    self showDocumentation:'newFeatures.html'
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  1066
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1067
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1068
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1069
!AbstractLauncherApplication methodsFor:'user actions - settings'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1070
2196
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1071
communicationsSettings
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1072
    "open a dialog on misc other settings"
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1073
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1074
    self settingsDialog:[:handler | handler communicationsSettings]
2196
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1075
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1076
    "Modified: / 31.7.1998 / 22:46:56 / cg"
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1077
!
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1078
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1079
compilerSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1080
    "open a dialog on compiler related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1081
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1082
    self settingsDialog:[:handler | handler compilerSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1083
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1084
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1085
displaySettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1086
    "open a dialog on display related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1087
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1088
    self settingsDialog:[:handler | handler displaySettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1089
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1090
    "Modified: / 31.7.1998 / 22:45:38 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1091
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1092
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1093
editSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1094
    "open a dialog on edit settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1095
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1096
    self settingsDialog:[:handler | handler editSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1097
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1098
    "Modified: / 31.7.1998 / 22:46:56 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1099
    "Created: / 6.1.1999 / 14:14:48 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1100
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1101
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1102
fontSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1103
    "open a dialog on font related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1104
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1105
    self settingsDialog:[:handler | handler fontSettingsFor:self]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1106
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1107
    "Modified: / 31.7.1998 / 22:45:44 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1108
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1109
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1110
javaSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1111
    "open a dialog on java-subsystem related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1112
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1113
    self settingsDialog:[:handler | handler javaSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1114
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1115
    "Modified: / 31.7.1998 / 22:46:13 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1117
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1118
keyboardSetting 
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1119
    "open a dialog on keyboard related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1120
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1121
    self settingsDialog:[:handler | handler keyboardSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1122
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1123
    "Modified: / 31.7.1998 / 22:45:56 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1124
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1125
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1126
languageSetting 
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1127
    "open a dialog on language related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1128
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1129
    self settingsDialog:[:handler | handler languageSettingsFor:self]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1130
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1131
    "Modified: / 31.7.1998 / 22:46:13 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1132
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1133
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1134
loadSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1135
    "restore settings from a settings-file."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1136
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1137
    "a temporary kludge - we need a central systemSettings object for this,
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1138
     which can be saved/restored with a single store/read."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1139
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1140
    |fileName|
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1141
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1142
    fileName := Dialog 
4052
23d23ec45081 *** empty log message ***
ca
parents: 4029
diff changeset
  1143
        requestFileName:(resources string:'Load Settings From:') 
3790
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1144
        default:'settings.stx'
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1145
        ok:(resources string:'Load') 
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1146
        abort:(resources string:'Cancel') 
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1147
        pattern:'*.stx'
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1148
        fromDirectory:nil.
2021
07aa22f577c5 code cleanup; replaced
Claus Gittinger <cg@exept.de>
parents: 2019
diff changeset
  1149
07aa22f577c5 code cleanup; replaced
Claus Gittinger <cg@exept.de>
parents: 2019
diff changeset
  1150
    (fileName size == 0) ifTrue:[
3790
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1151
        "/ canceled
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1152
        ^ self
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1153
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1154
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1155
    self withWaitCursorDo:[
3790
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1156
        Smalltalk fileIn:fileName.
6ebd50d902d9 upper case button labels
Claus Gittinger <cg@exept.de>
parents: 3787
diff changeset
  1157
        self reOpen
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1158
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1159
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1160
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1161
memorySettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1162
    "open a dialog on objectMemory related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1163
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1164
    self settingsDialog:[:handler | handler memorySettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1165
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1166
    "Modified: / 31.7.1998 / 22:46:33 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1167
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1168
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1169
messageSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1170
    "open a dialog on infoMessage related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1171
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1172
    self settingsDialog:[:handler | handler messageSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1173
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1174
    "Modified: / 31.7.1998 / 22:46:45 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1175
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1176
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1177
miscSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1178
    "open a dialog on misc other settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1179
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1180
    self settingsDialog:[:handler | handler miscSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1181
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1182
    "Modified: / 31.7.1998 / 22:46:56 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1183
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1184
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1185
printerSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1186
    "open a dialog on printer related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1187
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1188
    self settingsDialog:[:handler | handler printerSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1189
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1190
    "Modified: / 31.7.1998 / 22:47:05 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1191
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1192
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1193
saveSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1194
    "save settings to a settings-file."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1195
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1196
    self settingsDialog:[:handler | handler saveSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1197
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1198
    "Modified: / 31.7.1998 / 22:48:38 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1199
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1200
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1201
settingsDialog:symbolOrBlock 
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1202
    "open a dialog on viewStyle related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1203
2196
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1204
    |handler|
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1205
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1206
    RegisteredMenuHandlers notNil ifTrue:[
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1207
        handler := RegisteredMenuHandlers at:symbolOrBlock ifAbsent:nil.
2196
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1208
    ].
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1209
    handler isNil ifTrue:[
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1210
        handler := LauncherDialogs
53741ab5bd17 added OSI logging settings
Claus Gittinger <cg@exept.de>
parents: 2195
diff changeset
  1211
    ].
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1212
    symbolOrBlock isBlock ifTrue:[
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1213
        symbolOrBlock value:handler
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1214
    ] ifFalse:[
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1215
        handler perform:symbolOrBlock with:self.
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1216
    ]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1217
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1218
    "Modified: / 31.7.1998 / 22:47:33 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1219
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1220
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1221
sourceAndDebuggerSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1222
    "open a dialog on misc other settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1223
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1224
    self settingsDialog:[:handler | handler sourceAndDebuggerSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1225
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1226
    "Modified: / 31.7.1998 / 22:47:21 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1227
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1228
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1229
toolSettings
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1230
    "open a dialog on tool settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1231
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1232
    self settingsDialog:[:handler | handler toolSettings]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1233
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1234
    "Modified: / 31.7.1998 / 22:46:56 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1235
    "Created: / 13.10.1998 / 15:50:53 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1236
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1237
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1238
viewStyleSetting 
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1239
    "open a dialog on viewStyle related settings"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1240
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1241
    self settingsDialog:[:handler | handler viewStyleSettingsFor:self]
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1242
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1243
    "Modified: / 31.7.1998 / 22:47:33 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1244
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1245
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1246
!AbstractLauncherApplication methodsFor:'user actions - system'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1247
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1248
compressingGarbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1249
    "perform a compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1250
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1251
    self withWaitCursorDo:[ObjectMemory verboseGarbageCollect]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1252
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1253
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1254
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1255
garbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1256
    "perform a non-compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1257
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1258
    self withWaitCursorDo:[ObjectMemory reclaimSymbols]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1259
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1260
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1261
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1262
startStopEventTrace
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1263
    "start/stop event tracing for a particular view"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1264
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1265
    |v wg|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1266
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1267
    v := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1268
    v notNil ifTrue:[
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1269
	v := v topView.
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1270
	wg := v windowGroup.
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1271
	wg notNil ifTrue:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1272
	    "/
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1273
	    "/ toggle eventTrace in its windowGroup
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1274
	    "/
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1275
	    wg traceEvents:(wg preEventHook isNil)
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1276
	]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1277
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1278
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1279
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1280
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1281
!AbstractLauncherApplication methodsFor:'user actions - tools'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1282
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1283
inspectGlobalVariables
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1284
    "inspect globals"
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1285
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1286
    Smalltalk inspect
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1287
!
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1288
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1289
inspectWorkspaceVariables
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  1290
    "inspect workspace variables"
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1291
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1292
    Workspace workspaceVariables inspect
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1293
!
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1294
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1295
newProject 
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1296
    "creates a new project & opens a projectView for it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1297
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1298
    Project notNil ifTrue: [(ProjectView for: Project new) open]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1299
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1300
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1301
openTerminal
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1302
    self openApplication:#VT100TerminalView 
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1303
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1304
    "Created: / 27.7.1998 / 12:48:30 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1305
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1306
3158
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  1307
openWorkspace
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  1308
    WorkspaceApplication notNil ifTrue:[
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  1309
        ^ WorkspaceApplication open
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  1310
    ].
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  1311
    ^ self openApplication:Workspace
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  1312
!
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  1313
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1314
removeAllWorkspaceVariables
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1315
    "remove workspace variables"
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1316
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1317
    Workspace removeAllWorkspaceVariables
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1318
!
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  1319
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1320
selectProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1321
    "asks for and switch to another project"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1322
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1323
    |list box|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1324
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1325
    Project notNil ifTrue:[
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1326
        list := Project allInstances.
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1327
        box := ListSelectionBox new.
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1328
        box list:(list collect:[:p | p name]).
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1329
        box title:(resources string:'select a project').
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1330
        box action:[:selection |
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1331
            |project|
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1332
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1333
            project := list detect:[:p | p name = selection] ifNone:[nil].
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1334
            project isNil ifTrue:[
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1335
                transcript notNil ifTrue:[
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1336
                    transcript showCR:'no such project.'
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1337
                ]
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1338
            ] ifFalse:[
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1339
                project showViews.
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1340
                Project current:project
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1341
            ]
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1342
        ].
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
  1343
        box open.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1344
        box destroy
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1345
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1346
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1347
3408
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1348
startBugMessages
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1349
    "open the SUnit test runner"
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1350
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1351
    self openApplication:#BugGUI
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1352
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1353
    "Modified: / 17.10.1998 / 14:38:18 / cg"
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1354
!
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  1355
3362
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1356
startChangeSetBrowser
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1357
    "open a change Set Browser"
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1358
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1359
    ChangeSetBrowser open
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1360
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1361
    "Created: / 5.11.2001 / 18:04:05 / cg"
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1362
!
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  1363
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1364
startChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1365
    "open a changebrowser - either new or old GUI, depending on userPrefs"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1366
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1367
    self openApplication:(UserPreferences current changesBrowserClass)
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1368
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1369
    "Modified: / 17.10.1998 / 14:38:18 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1370
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1371
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1372
startNewChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1373
    "opens the new changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1374
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1375
    self openApplication:#NewChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1376
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1377
    "Created: / 6.6.1998 / 19:47:26 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1378
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1379
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1380
startNewLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1381
    "opens the new launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1382
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1383
    NewLauncher isNil ifTrue:[
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1384
	^ self warn:'The NewLauncher is not available in this release.'
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1385
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1386
    NewLauncher openAt:(self window origin)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1387
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1388
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1389
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1390
startOldChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1391
    "opens the old changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1392
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1393
    self openApplication:#ChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1394
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1395
    "Created: / 6.6.1998 / 19:47:26 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1396
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1397
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1398
startOldLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1399
    "opens the old launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1400
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1401
    Launcher isNil ifTrue:[
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1402
	^ self warn:'The (Old)Launcher is not available in this release.'
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1403
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1404
    Launcher openAt:(self window origin)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1405
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  1406
!
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  1407
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  1408
startSUnitTestRunner
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  1409
    "open the SUnit test runner"
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  1410
3037
0d452d54bf04 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3035
diff changeset
  1411
    self openApplication:#TestRunner
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  1412
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  1413
    "Modified: / 17.10.1998 / 14:38:18 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1414
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1415
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1416
!AbstractLauncherApplication methodsFor:'user actions - windows'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1417
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1418
askForAnotherDisplay
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1419
    "ask for some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1420
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1421
    |displayName|
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1422
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1423
    displayName := Dialog request:'Display:' initialAnswer:(Screen default displayName).
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1424
    displayName size == 0 ifTrue:[^ nil].
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1425
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1426
    ^ XWorkstation newDispatchingFor:displayName.
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1427
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1428
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1429
deIconifyAllWindows
2144
48df3bc4d44c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2111
diff changeset
  1430
    |setOfViews currentScreen|
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1431
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1432
    setOfViews := Project current views asIdentitySet.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1433
    setOfViews addAll:(Project defaultProject views).
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1434
2144
48df3bc4d44c checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2111
diff changeset
  1435
    currentScreen := Screen current.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1436
    setOfViews do:[:aTopView |
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1437
	aTopView device == currentScreen ifTrue:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1438
	    aTopView expand
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1439
	].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1440
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1441
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1442
    "
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1443
     Transcript topView application deIconifyAllWindows
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1444
    "
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1445
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1446
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1447
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1448
findAndDestroyWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1449
    "find a window (by name) and destroy it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1450
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1451
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1452
    v := self findWindow:'select view to close:'.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1453
    v notNil ifTrue:[v destroy]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1454
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1455
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1456
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1457
findAndMigrateWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1458
    "find a window (by name) and migrate it to some other display"
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1459
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1460
    |possibleGroups v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1461
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1462
    possibleGroups := WindowGroup allInstances select:[:eachGroup |
3014
cb531619c185 Don't use obsolete methods.
Stefan Vogel <sv@exept.de>
parents: 3003
diff changeset
  1463
                                        eachGroup graphicsDevice == Screen current
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1464
                                        and:[eachGroup isModal not
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1465
                                        and:[eachGroup topViews size > 0]]].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1466
    possibleGroups size == 0 ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1467
        self information:'No windows found which could be migrated to some other display.'.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1468
        ^ self
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1469
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1470
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1471
    v := self findWindow:'Select view to migrate:' windowGroupFilter:possibleGroups.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1472
    v notNil ifTrue:[
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1473
        self migrateWindow:v topView
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1474
    ]
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1475
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1476
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1477
findAndMigrateWindowBack
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1478
    "find a window (by name) and migrate it back to this display"
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1479
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1480
    |possibleGroups v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1481
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1482
    possibleGroups := WindowGroup allInstances select:[:eachGroup |
3014
cb531619c185 Don't use obsolete methods.
Stefan Vogel <sv@exept.de>
parents: 3003
diff changeset
  1483
                                        eachGroup graphicsDevice ~~ Screen current
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1484
                                        and:[eachGroup isModal not
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1485
                                        and:[eachGroup topViews size > 0]]].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1486
    possibleGroups size == 0 ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1487
        self information:'No windows are open on any other display.'.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1488
        ^ self
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1489
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1490
        
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1491
    v := self findWindow:'Select view to migrate back:' windowGroupFilter:possibleGroups.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1492
    v notNil ifTrue:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1493
        v windowGroup migrateTo:(Screen current)
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1494
    ]
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1495
!
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1496
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1497
findAndRaiseWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1498
    "find a window (by name) and raise it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1499
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1500
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1501
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1502
    v := self findWindow:'select view to raise deiconified:'.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1503
    v notNil ifTrue:[v raiseDeiconified]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1504
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1505
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1506
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1507
fullScreenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1508
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1509
     save the contents of the whole screen."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1510
3326
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1511
    self window sensor ctrlDown ifTrue:[
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1512
        ^ self fullScreenHardcopyUngrabbed
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1513
    ].
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1514
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1515
    Processor 
3326
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1516
        addTimedBlock:[
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1517
                        self 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1518
                            saveScreenImage:(Image fromScreen) 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1519
                            defaultName:'screen'
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1520
                      ] 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1521
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1522
!
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1523
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1524
fullScreenHardcopyUngrabbed
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1525
    "after a second (to allow redraw of views under menu ...),
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1526
     save the contents of the whole screen."
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1527
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1528
    Processor 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1529
        addTimedBlock:[
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1530
                        |display image|
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1531
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1532
                        display := Screen current.
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1533
                        image := Image 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1534
                            fromScreen:(0@0 corner:(display extent))
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1535
                            on:display
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1536
                            grab:false.
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1537
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1538
                        self 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1539
                            saveScreenImage:image 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1540
                            defaultName:'screen'
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1541
                      ] 
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  1542
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1543
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1544
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1545
iconifyAllWindows
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1546
    |setOfViews currentScreen|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1547
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1548
    setOfViews := Project current views asIdentitySet.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1549
    setOfViews addAll:(Project defaultProject views).
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1550
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1551
    currentScreen := Screen current.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1552
    setOfViews do:[:aTopView |
3219
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1553
	aTopView device == currentScreen ifTrue:[
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1554
	    aTopView collapse
2e32f575524c removed mouseSettings - useless
Claus Gittinger <cg@exept.de>
parents: 3218
diff changeset
  1555
	]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1556
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1557
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1558
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1559
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1560
migrateAllWindows
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1561
    "migrate all views to some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1562
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1563
    |anotherDisplay toMigrate|
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1564
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1565
    [
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1566
        anotherDisplay := self askForAnotherDisplay.
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1567
        anotherDisplay isNil ifTrue:[
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1568
            ^ self.
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1569
        ].
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1570
    ] on:Screen deviceOpenErrorSignal do:[:ex|
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1571
        ^ self warn:'cannot open display: ', ex parameter.
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1572
    ].
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1573
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1574
    toMigrate := WindowGroup allInstances 
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1575
        select:[:each | each graphicsDevice == Screen current
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1576
                        and:[each topViews size > 0
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1577
                        and:[each isModal not]]
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1578
               ].
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1579
    toMigrate do:[:eachGroup |
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1580
        eachGroup migrateTo:anotherDisplay
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1581
    ]
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1582
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1583
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1584
migrateWindow:aWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1585
    "migrate a view to some other display"
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1586
2778
1e4bf8bf1d37 block migration of a modalBox
Claus Gittinger <cg@exept.de>
parents: 2775
diff changeset
  1587
    aWindow windowGroup isModal ifTrue:[
1e4bf8bf1d37 block migration of a modalBox
Claus Gittinger <cg@exept.de>
parents: 2775
diff changeset
  1588
        self warn:'Sorry - I cannot migrate a modalBox; please migrate the owning View.'.
1e4bf8bf1d37 block migration of a modalBox
Claus Gittinger <cg@exept.de>
parents: 2775
diff changeset
  1589
        ^ self
1e4bf8bf1d37 block migration of a modalBox
Claus Gittinger <cg@exept.de>
parents: 2775
diff changeset
  1590
    ].
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1591
    self migrateWindow:aWindow withBackOption:(self confirm:'Show ''Return Back'' Button on the other display ?')
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1592
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1593
!
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1594
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1595
migrateWindow:aWindow withBackOption:withBackOption
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1596
    "migrate a view to some other display"
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1597
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1598
    |anotherDisplay wg here b|
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  1599
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1600
    aWindow isTopView ifFalse:[
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1601
        self information:'Cannto migrate this view'.
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1602
        ^ self
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1603
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  1604
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1605
    [
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1606
        anotherDisplay := self askForAnotherDisplay.
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1607
        anotherDisplay isNil ifTrue:[
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1608
            ^ self.
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1609
        ].
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1610
    ] on:Screen deviceOpenErrorSignal do:[:ex|
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  1611
        ^ self warn:'cannot open display: ', ex parameter.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1612
    ].
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1613
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1614
    wg := aWindow windowGroup.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1615
    wg migrateTo:anotherDisplay.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1616
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1617
    withBackOption ifTrue:[
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1618
        here := Screen current.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1619
        b := Button onDevice:anotherDisplay.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1620
        b label:'Return window back to ' , here displayName.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1621
        b action:[ wg migrateTo:here. b destroy. ].
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1622
        b origin:0@0.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1623
        b open.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  1624
    ].
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1625
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  1626
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1627
screenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1628
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1629
     let user specify a rectangular area on the screen
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1630
     and save its contents."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1631
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1632
    |area|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1633
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1634
    Processor 
3782
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1635
        addTimedBlock:[
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1636
                        [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1637
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1638
                        area := Rectangle fromUser.
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1639
                        (area width > 0 and:[area height > 0]) ifTrue:[
3856
d2c16db43c66 wait 2 seconds before grabbing
Claus Gittinger <cg@exept.de>
parents: 3826
diff changeset
  1640
                            Delay waitForSeconds:2.
3782
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1641
                            self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1642
                        ]
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1643
                      ] 
d30c08c77963 hardcopy file box
tm
parents: 3778
diff changeset
  1644
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1645
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1646
    "Modified: / 18.8.1998 / 15:00:42 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1647
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1648
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1649
startWindowTreeView
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1650
    "open a windowTree (on a picked topView)"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1651
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1652
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1653
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1654
    WindowTreeView isNil ifTrue:[
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1655
        ^ self warn:'The WindowTreeView is not available in this release.'
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1656
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1657
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1658
    v := self pickAView.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1659
    v notNil ifTrue:[
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1660
        WindowTreeView openOn:v topView
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1661
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1662
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1663
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1664
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1665
startWindowTreeViewForAll
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1666
    "open a windowTree on all views in the system"
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1667
4243
2dc1cbadd5fc *** empty log message ***
penk
parents: 4242
diff changeset
  1668
    |v|
2dc1cbadd5fc *** empty log message ***
penk
parents: 4242
diff changeset
  1669
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1670
    WindowTreeView isNil ifTrue:[
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1671
        ^ self warn:'The WindowTreeView is not available in this release.'
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1672
    ].
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1673
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1674
    WindowTreeView openOnAll
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1675
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1676
!
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  1677
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1678
viewDestroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1679
    "let user pick a view and destroy it.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1680
     Even allow destroying non-smalltalk views
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1681
     (also for views which I forgot due to some error)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1682
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1683
    |device v id i c|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1684
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1685
    (Delay forSeconds:1) wait.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1686
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1687
    device := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1688
    i := Image fromFile:'bitmaps/xpmBitmaps/cursors/cross2.xpm'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1689
    i isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1690
	c := Cursor crossHair
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1691
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1692
	c := Cursor fromImage:i
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1693
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1694
    id := device viewIdFromPoint:(device pointFromUserShowing:c).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1695
    (v := device viewFromId:id) notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1696
	v topView destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1697
	^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1698
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1699
    id = device rootView id ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1700
	^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1701
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1702
    (Dialog confirm:'mhmh, this may not a be smalltalk view\(Or I somehow forgot about it).\Destroy anyway ?' withCRs)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1703
    ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1704
	device destroyView:nil withId:id
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1705
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1706
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1707
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1708
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1709
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1710
viewHardcopy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1711
    "after a second (to allow redraw of views under menu ...),
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1712
     let user specify a view and save its contents."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1713
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1714
    Processor 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1715
        addTimedBlock:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1716
                        |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1717
                        (v := Screen current viewFromUser) notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1718
                            self saveScreenImage:(Image fromView:(v topView)) defaultName:'hardcopy'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1719
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1720
                      ] 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1721
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1722
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1723
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1724
viewInspect
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1725
    "let user pick a view and inspect it. Only smalltalk views are allowed"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1726
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1727
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1728
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1729
    (v := self pickAView) notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1730
	v inspect
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1731
    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1732
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1733
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1734
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1735
viewMigrate
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1736
    "let user pick a view and migrate it to some other display"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1737
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1738
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1739
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1740
    (v := self pickAView) notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1741
        self migrateWindow:v topView
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  1742
    ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1743
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1744
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1745
!AbstractLauncherApplication::CompilerSettingsAppl class methodsFor:'defaults'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1746
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1747
constantFoldingOptions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1748
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1749
    ^ #( nil #level1 #level2 #full )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1750
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1751
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1752
constantFoldingStrings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1753
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1754
    ^ #('disabled' 'level1 (always safe)' 'level2 (usually safe)' 'full')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1755
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1756
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1757
keepSourceOptions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1758
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1759
    ^ #( keep reference absReference sourceReference discard )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1760
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1761
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1762
keepSourceStrings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1763
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1764
    ^ #('Keep as String' 'Reference to Filename' 'Reference to Full Path' 'Append and Ref in `st.src''' 'Discard' )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1765
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1766
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1767
stcCompilationDemoStrings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1768
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1769
    ^ #('never')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1770
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1771
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1772
stcCompilationFullVersionStrings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1773
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1774
    ^ #('always' 'primitive code only' 'never')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1775
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1776
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1777
stcCompilationOptions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1778
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1779
    ^ #( always default never)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1780
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1781
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1782
!AbstractLauncherApplication::CompilerSettingsAppl class methodsFor:'interface specs'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1783
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1784
windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1785
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1786
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1787
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1788
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1789
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1790
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1791
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1792
     UIPainter new openOnClass:AbstractLauncherApplication::CompilerSettingsAppl andSelector:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1793
     AbstractLauncherApplication::CompilerSettingsAppl new openInterface:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1794
     AbstractLauncherApplication::CompilerSettingsAppl open
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1795
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1796
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1797
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1798
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1799
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1800
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1801
        #name: #windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1802
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1803
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1804
          #label: 'Compiler Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1805
          #name: 'Compiler Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1806
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1807
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1808
          #bounds: #(#Rectangle 16 42 616 602)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1809
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1810
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1811
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1812
          #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1813
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1814
              #label: 'Catch Method Redefinitions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1815
              #name: 'CatchMethodRedefinitions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1816
              #layout: #(#LayoutFrame 5 0 5 0 250 0 30 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1817
              #model: #catchMethodRedefs
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1818
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1819
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1820
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1821
              #label: 'Catch Class Redefinitions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1822
              #name: 'CatchClassRedefinitions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1823
              #layout: #(#LayoutFrame 257 0 5 0 7 1 30 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1824
              #model: #catchClassRedefs
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1825
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1826
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1827
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1828
              #label: 'Keep History Line in Methods'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1829
              #name: 'KeepHistoryLineinMethods'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1830
              #layout: #(#LayoutFrame 5 0 30 0 250 0 55 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1831
              #model: #historyLines
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1832
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1833
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1834
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1835
              #label: 'Keep Full Class History'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1836
              #name: 'KeepFullClassHistory'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1837
              #layout: #(#LayoutFrame 257 0 30 0 7 1 55 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1838
              #enableChannel: #hasHistoryManager
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1839
              #model: #fullHistoryUpdate
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1840
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1841
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1842
           #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1843
              #label: 'FileIn Source Mode:'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1844
              #name: 'FileInSourceModeLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1845
              #layout: #(#LayoutFrame 239 0 60 0 425 0 82 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1846
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1847
              #adjust: #right
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1848
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1849
           #(#PopUpListSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1850
              #label: 'PopUp List'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1851
              #name: 'KeepSourceSelection'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1852
              #layout: #(#LayoutFrame 425 0 60 0 -5 1 82 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1853
              #tabable: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1854
              #model: #keepSourceSelection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1855
              #menu: #keepSource
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1856
              #useIndex: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1857
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1858
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1859
              #name: 'Separator1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1860
              #layout: #(#LayoutFrame 0 0.0 90 0 0 1 93 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1861
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1862
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1863
              #label: 'Lazy Compilation when Autoloading'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1864
              #name: 'LazyCompilationWhenAutoloading'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1865
              #layout: #(#LayoutFrame 5 0 100 0 250 0 125 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1866
              #model: #compileLazy
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1867
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1868
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1869
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1870
              #label: 'If Present, Load Binary Objects when Autoloading'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1871
              #name: 'LoadBinaryObjectsWhenAutoloading'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1872
              #layout: #(#LayoutFrame 5 0 125 0 331 0 150 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1873
              #enableChannel: #canLoadBinaries
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1874
              #model: #loadBinaries
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1875
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1876
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1877
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1878
              #label: 'Just in Time Compilation to Machine Code'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1879
              #name: 'JustInTimeCompilation'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1880
              #layout: #(#LayoutFrame 5 0 150 0 289 0 175 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1881
              #model: #justInTimeCompilation
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1882
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1883
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1884
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1885
              #name: 'Separator2'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1886
              #layout: #(#LayoutFrame 0 0.0 180 0 0 1.0 183 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1887
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1888
           #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1889
              #label: 'Stc Compilation Parameters...'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1890
              #name: 'StcCompilationParametersButton'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1891
              #layout: #(#LayoutFrame 5 0 195 0 217 0 217 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1892
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1893
              #model: #stcCompilerSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1894
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1895
           #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1896
              #label: 'Stc Compilation to Machine Code'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1897
              #name: 'StcCompilationToMachineCodeLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1898
              #layout: #(#LayoutFrame 220 0 195 0 425 0 217 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1899
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1900
              #adjust: #right
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1901
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1902
           #(#PopUpListSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1903
              #label: 'PopUp List'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1904
              #name: 'StcCompilation'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1905
              #layout: #(#LayoutFrame 425 0 195 0 -5 1 217 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1906
              #tabable: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1907
              #model: #stcCompilationSelection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1908
              #enableChannel: #canLoadBinaries
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1909
              #menu: #stcCompilationList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1910
              #useIndex: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1911
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1912
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1913
              #name: 'Separator3'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1914
              #layout: #(#LayoutFrame 0 0.0 225 0 0 1.0 228 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1915
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1916
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1917
              #label: 'Allow Underscore in Identifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1918
              #name: 'AllowUnderscoreInIdentifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1919
              #layout: #(#LayoutFrame 5 0 240 0 249 0 262 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1920
              #model: #allowUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1921
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1922
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1923
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1924
              #label: 'Allow Dollar in Identifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1925
              #name: 'AllowDollarInIdentifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1926
              #layout: #(#LayoutFrame 5 0 265 0 249 0 287 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1927
              #model: #allowDollar
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1928
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1929
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1930
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1931
              #label: 'Allow VW3 QualifiedNames'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1932
              #name: 'AllowVW3QualifiedNames'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1933
              #layout: #(#LayoutFrame 5 0 290 0 249 0 312 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1934
              #model: #allowQualifiedNames
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1935
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1936
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1937
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1938
              #label: 'Allow Squeak Extensions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1939
              #name: 'AllowSqueakExtensions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1940
              #layout: #(#LayoutFrame 5 0 315 0 249 0 337 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1941
              #model: #allowSqueakExtensions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1942
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1943
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1944
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1945
              #label: 'Allow Dolphin Extensions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1946
              #name: 'AllowDolphinExtensions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1947
              #layout: #(#LayoutFrame 5 0 340 0 249 0 362 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1948
              #model: #allowDolphinExtensions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1949
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1950
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1951
           #(#PopUpListSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1952
              #label: 'PopUp List'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1953
              #name: 'ConstantFolding'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1954
              #layout: #(#LayoutFrame 425 0 238 0 -5 1 260 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1955
              #tabable: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1956
              #model: #constantFoldingSelection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1957
              #menu: #constantFolding
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1958
              #useIndex: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1959
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1960
           #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1961
              #label: 'Constant Folding:'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1962
              #name: 'ConstantFoldingLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1963
              #layout: #(#LayoutFrame 250 0 240 0 425 0 262 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1964
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1965
              #adjust: #right
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1966
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1967
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1968
              #label: 'Allow OldStyle Assignment (_)'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1969
              #name: 'AllowOldStyleAssignment'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1970
              #layout: #(#LayoutFrame 257 0 265 0 501 0 287 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1971
              #model: #allowOldStyleAssignment
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1972
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1973
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1974
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1975
              #label: 'Allow Reserved Words as Selector (self)'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1976
              #name: 'AllowReservedWordsAsSelector'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1977
              #layout: #(#LayoutFrame 257 0 290 0 -5 1 312 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1978
              #model: #allowReservedWordsAsSelectors
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1979
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1980
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1981
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1982
              #label: 'Full Debug Info'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1983
              #name: 'FullDebugInfo'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1984
              #layout: #(#LayoutFrame 257 0 315 0 501 0 337 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1985
              #model: #fullDebugSupport
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1986
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1987
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1988
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1989
              #label: 'Literal Arrays are Immutable'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1990
              #name: 'LiteralArraysAreImmutable'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1991
              #layout: #(#LayoutFrame 257 0 340 0 501 0 362 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1992
              #model: #immutableArrays
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1993
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1994
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1995
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1996
              #name: 'Separator4'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1997
              #layout: #(#LayoutFrame 0 0.0 365 0 0 1.0 368 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1998
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  1999
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2000
              #label: 'Warnings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2001
              #name: 'Warnings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2002
              #layout: #(#LayoutFrame 5 0 375 0 249 0 397 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2003
              #model: #warnings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2004
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2005
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2006
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2007
              #label: 'ST/X Extensions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2008
              #name: 'STXExtensions'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2009
              #layout: #(#LayoutFrame 25 0 400 0 245 0 422 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2010
              #enableChannel: #warnings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2011
              #model: #warnSTX
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2012
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2013
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2014
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2015
              #label: 'Underscores in Identifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2016
              #name: 'UnderscoresInIdentifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2017
              #layout: #(#LayoutFrame 25 0 425 0 245 0 447 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2018
              #enableChannel: #enableUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2019
              #model: #warnUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2020
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2021
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2022
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2023
              #label: 'Dollars in Identifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2024
              #name: 'DollarsInIdentifiers'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2025
              #layout: #(#LayoutFrame 25 0 450 0 245 0 472 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2026
              #enableChannel: #enableDollar
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2027
              #model: #warnDollar
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2028
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2029
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2030
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2031
              #label: 'Unused Method Variables'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2032
              #name: 'UnusedMethodVariables'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2033
              #layout: #(#LayoutFrame 25 0 475 0 245 0 497 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2034
              #enableChannel: #warnings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2035
              #model: #warnUnusedVars
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2036
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2037
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2038
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2039
              #label: 'OldStyle Assignment'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2040
              #name: 'OldStyleAssignment'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2041
              #layout: #(#LayoutFrame 257 0 400 0 475 0 422 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2042
              #enableChannel: #warnings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2043
              #model: #warnOldStyle
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2044
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2045
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2046
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2047
              #label: 'Common Mistakes'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2048
              #name: 'CommonMistakes'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2049
              #layout: #(#LayoutFrame 257 0 425 0 475 0 447 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2050
              #enableChannel: #warnings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2051
              #model: #warnCommonMistakes
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2052
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2053
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2054
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2055
              #label: 'Possible Incompatibilities'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2056
              #name: 'PossibleIncompatibilities'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2057
              #layout: #(#LayoutFrame 257 0 450 0 474 0 472 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2058
              #enableChannel: #warnings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2059
              #model: #warnCompatibility
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2060
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2061
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2062
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2063
              #name: 'Separator5'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2064
              #layout: #(#LayoutFrame 0 0.0 500 0 0 1.0 503 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2065
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2066
           #(#HorizontalPanelViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2067
              #name: 'HorizontalPanel1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2068
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2069
              #horizontalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2070
              #verticalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2071
              #horizontalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2072
              #verticalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2073
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2074
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2075
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2076
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2077
                    #label: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2078
                    #name: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2079
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2080
                    #model: #saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2081
                    #enableChannel: #modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2082
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2083
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2084
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2085
                    #label: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2086
                    #name: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2087
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2088
                    #model: #doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2089
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2090
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2091
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2092
                    #label: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2093
                    #name: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2094
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2095
                    #model: #help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2096
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2097
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2098
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2099
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2100
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2101
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2102
           )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2103
         
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2104
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2105
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2106
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2107
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2108
!AbstractLauncherApplication::CompilerSettingsAppl methodsFor:'actions'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2109
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2110
doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2111
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2112
    self isPartOfSettinsDialog ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2113
        self loadRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2114
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2115
    self closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2116
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2117
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2118
evaluateModified
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2119
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2120
    self modifiedChannel value:(self hasUnsavedChanges).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2121
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2122
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2123
help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2124
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2125
    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/compilerSettings.html'].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2126
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2127
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2128
loadRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2129
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2130
    self allowDollar value:(Compiler allowDollarInIdentifier ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2131
    self allowDolphinExtensions value:(Compiler allowDolphinExtensions ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2132
    self allowOldStyleAssignment value:(Compiler allowOldStyleAssignment ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2133
    self allowQualifiedNames value:(Compiler allowQualifiedNames ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2134
    self allowReservedWordsAsSelectors value:(Compiler allowReservedWordsAsSelectors ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2135
    self allowSqueakExtensions value:(Compiler allowSqueakExtensions ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2136
    self allowUnderscore value:(Compiler allowUnderscoreInIdentifier ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2137
    self catchClassRedefs value:(Class catchClassRedefinitions ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2138
    self catchMethodRedefs value:(Class catchMethodRedefinitions ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2139
    self compileLazy value:(Autoload compileLazy ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2140
    self constantFoldingSelection value:(self class constantFoldingOptions indexOf:Compiler foldConstants ifAbsent:3).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2141
    self supportsJustInTimeCompilation ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2142
        self fullDebugSupport value:(ObjectMemory fullSingleStepSupport ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2143
    ] ifFalse:[ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2144
        self fullDebugSupport value:(Compiler lineNumberInfo == #full).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2145
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2146
    self hasHistoryManager ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2147
        self fullHistoryUpdate value:(HistoryManager fullHistoryUpdate ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2148
    ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2149
        self fullHistoryUpdate value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2150
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2151
    self historyLines value:self hasHistoryManager.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2152
    self immutableArrays value:(Compiler arraysAreImmutable ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2153
    self supportsJustInTimeCompilation ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2154
        self justInTimeCompilation value:(ObjectMemory justInTimeCompilation ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2155
    ] ifFalse:[ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2156
        self justInTimeCompilation value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2157
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2158
    self keepSourceSelection value:(self class keepSourceOptions indexOf:ClassCategoryReader sourceMode ifAbsent:1).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2159
    self canLoadBinaries ifTrue:[ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2160
        self loadBinaries value:Smalltalk loadBinaries.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2161
    ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2162
        self loadBinaries value:false
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2163
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2164
    self thisIsADemoVersion ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2165
        self stcCompilationSelection value:(self class stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:2).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2166
    ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2167
        self stcCompilationSelection value:2.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2168
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2169
    self warnCommonMistakes value:(Compiler warnCommonMistakes ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2170
    self warnCompatibility value:(Compiler warnPossibleIncompatibilities ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2171
    self warnDollar value:(Compiler warnDollarInIdentifier ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2172
    self warnOldStyle value:(Compiler warnOldStyleAssignment ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2173
    self warnSTX value:(Compiler warnSTXSpecials ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2174
    self warnUnderscore value:(Compiler warnUnderscoreInIdentifier ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2175
    self warnUnusedVars value:(Compiler warnUnusedVars ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2176
    self warnings value:(Compiler warnings ? false).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2177
    self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2178
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2179
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2180
saveRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2181
    | result |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2182
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2183
    (self hasUnsavedChanges) ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2184
        result := self confirmWithCancel:(resources string:'Save changed Compiler Settings ?'). 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2185
        result isNil ifTrue:[ ^ false].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2186
        result ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2187
            self saveSettings.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2188
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2189
            self loadRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2190
        ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2191
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2192
    ^ true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2193
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2194
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2195
saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2196
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2197
    HistoryManager notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2198
        HistoryManager fullHistoryUpdate:self fullHistoryUpdate value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2199
        self historyLines value ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2200
            HistoryManager activate
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2201
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2202
            HistoryManager deactivate
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2203
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2204
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2205
    Class catchMethodRedefinitions:self catchMethodRedefs value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2206
    Class catchClassRedefinitions:self catchClassRedefs value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2207
    ClassCategoryReader sourceMode:(self class keepSourceOptions at:self keepSourceSelection value).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2208
    Compiler warnings:self warnings value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2209
    Compiler warnSTXSpecials:self warnSTX value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2210
    Compiler warnOldStyleAssignment:self warnOldStyle value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2211
    Compiler warnUnderscoreInIdentifier:self warnUnderscore value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2212
    Compiler warnDollarInIdentifier:self warnDollar value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2213
    Compiler warnCommonMistakes:self warnCommonMistakes value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2214
    Compiler warnPossibleIncompatibilities:self warnCompatibility value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2215
    Compiler warnUnusedVars:self warnUnusedVars value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2216
    Compiler allowUnderscoreInIdentifier:self allowUnderscore value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2217
    Compiler allowDollarInIdentifier:self allowDollar value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2218
    Compiler allowSqueakExtensions:self allowSqueakExtensions value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2219
    Compiler allowDolphinExtensions:self allowDolphinExtensions value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2220
    Compiler allowQualifiedNames:self allowQualifiedNames value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2221
    Compiler allowOldStyleAssignment:self allowOldStyleAssignment value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2222
    Compiler allowReservedWordsAsSelectors:self allowReservedWordsAsSelectors value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2223
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2224
    Compiler arraysAreImmutable:self immutableArrays value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2225
    self fullDebugSupport value ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2226
        Compiler lineNumberInfo:#full.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2227
    ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2228
        Compiler lineNumberInfo:true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2229
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2230
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2231
    Compiler stcCompilation:(self class stcCompilationOptions at:self stcCompilationSelection value).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2232
    Compiler foldConstants:(self class constantFoldingOptions at:self constantFoldingSelection value).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2233
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2234
    self supportsJustInTimeCompilation ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2235
        | justInTime |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2236
        justInTime := self justInTimeCompilation value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2237
        justInTime ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2238
            Method allInstancesDo:[:m | m checked:false].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2239
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2240
        ObjectMemory justInTimeCompilation:justInTime.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2241
        ObjectMemory fullSingleStepSupport:self fullDebugSupport value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2242
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2243
    Autoload compileLazy:self compileLazy value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2244
    Smalltalk loadBinaries:self loadBinaries value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2245
    self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2246
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2247
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2248
stcCompilerSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2249
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2250
    AbstractLauncherApplication::LauncherDialogs stcCompilerSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2251
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2252
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2253
!AbstractLauncherApplication::CompilerSettingsAppl methodsFor:'aspects'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2254
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2255
allowDollar
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2256
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2257
    allowDollar isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2258
        allowDollar := (Compiler allowDollarInIdentifier ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2259
        allowDollar onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2260
        allowDollar addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2261
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2262
    ^ allowDollar.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2263
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2264
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2265
allowDolphinExtensions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2266
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2267
    allowDolphinExtensions isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2268
        allowDolphinExtensions := (Compiler allowDolphinExtensions ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2269
        allowDolphinExtensions onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2270
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2271
    ^ allowDolphinExtensions.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2272
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2273
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2274
allowOldStyleAssignment
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2275
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2276
    allowOldStyleAssignment isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2277
        allowOldStyleAssignment := (Compiler allowOldStyleAssignment ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2278
        allowOldStyleAssignment onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2279
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2280
    ^ allowOldStyleAssignment.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2281
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2282
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2283
allowQualifiedNames
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2284
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2285
    allowQualifiedNames isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2286
        allowQualifiedNames := (Compiler allowQualifiedNames ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2287
        allowQualifiedNames onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2288
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2289
    ^ allowQualifiedNames.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2290
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2291
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2292
allowReservedWordsAsSelectors
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2293
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2294
    allowReservedWordsAsSelectors isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2295
        allowReservedWordsAsSelectors := (Compiler allowReservedWordsAsSelectors ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2296
        allowReservedWordsAsSelectors onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2297
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2298
    ^ allowReservedWordsAsSelectors.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2299
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2300
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2301
allowSqueakExtensions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2302
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2303
    allowSqueakExtensions isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2304
        allowSqueakExtensions := (Compiler allowSqueakExtensions ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2305
        allowSqueakExtensions onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2306
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2307
    ^ allowSqueakExtensions.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2308
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2309
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2310
allowUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2311
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2312
    allowUnderscore isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2313
        allowUnderscore := (Compiler allowUnderscoreInIdentifier ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2314
        allowUnderscore onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2315
        allowUnderscore addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2316
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2317
    ^ allowUnderscore.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2318
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2319
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2320
canLoadBinaries
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2321
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2322
    canLoadBinaries isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2323
        canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2324
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2325
    ^ canLoadBinaries.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2326
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2327
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2328
catchClassRedefs
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2329
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2330
    catchClassRedefs isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2331
        catchClassRedefs := (Class catchClassRedefinitions ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2332
        catchClassRedefs onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2333
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2334
    ^ catchClassRedefs.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2335
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2336
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2337
catchMethodRedefs
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2338
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2339
    catchMethodRedefs isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2340
        catchMethodRedefs := (Class catchMethodRedefinitions ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2341
        catchMethodRedefs onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2342
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2343
    ^ catchMethodRedefs.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2344
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2345
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2346
compileLazy
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2347
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2348
    compileLazy isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2349
        compileLazy := (Autoload compileLazy ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2350
        compileLazy onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2351
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2352
    ^ compileLazy.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2353
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2354
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2355
constantFolding
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2356
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2357
    constantFolding isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2358
        constantFolding := (resources array:(self class constantFoldingStrings)) asList.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2359
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2360
    ^ constantFolding.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2361
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2362
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2363
constantFoldingOptions
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2364
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2365
    constantFoldingOptions isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2366
        constantFoldingOptions := self class constantFoldingOptions.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2367
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2368
    ^ constantFoldingOptions.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2369
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2370
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2371
constantFoldingSelection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2372
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2373
    constantFoldingSelection isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2374
        | index |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2375
        index := self class constantFoldingOptions indexOf:Compiler foldConstants ifAbsent:3.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2376
        constantFoldingSelection := index asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2377
        constantFoldingSelection onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2378
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2379
    ^ constantFoldingSelection.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2380
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2381
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2382
enableDollar
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2383
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2384
    enableDollar isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2385
        enableDollar := true asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2386
        enableDollar addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2387
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2388
    ^ enableDollar.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2389
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2390
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2391
enableUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2392
    "automatically generated by UIPainter ..."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2393
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2394
    "*** the code below creates a default model when invoked."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2395
    "*** (which may not be the one you wanted)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2396
    "*** Please change as required and accept it in the browser."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2397
    "*** (and replace this comment by something more useful ;-)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2398
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2399
    enableUnderscore isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2400
        enableUnderscore := true asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2401
"/ if your app needs to be notified of changes, uncomment one of the lines below:
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2402
"/       enableUnderscore addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2403
"/       enableUnderscore onChangeSend:#enableUnderscoreChanged to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2404
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2405
    ^ enableUnderscore.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2406
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2407
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2408
fullDebugSupport
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2409
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2410
    fullDebugSupport isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2411
        self supportsJustInTimeCompilation ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2412
            fullDebugSupport := (ObjectMemory fullSingleStepSupport ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2413
        ] ifFalse:[ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2414
            fullDebugSupport := (Compiler lineNumberInfo == #full) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2415
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2416
        fullDebugSupport onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2417
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2418
    ^ fullDebugSupport.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2419
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2420
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2421
fullHistoryUpdate
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2422
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2423
    fullHistoryUpdate isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2424
        self hasHistoryManager ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2425
            fullHistoryUpdate := (HistoryManager fullHistoryUpdate ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2426
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2427
            fullHistoryUpdate := false asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2428
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2429
        fullHistoryUpdate onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2430
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2431
    ^ fullHistoryUpdate.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2432
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2433
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2434
historyLines
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2435
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2436
    historyLines isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2437
        historyLines := self hasHistoryManager asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2438
        historyLines onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2439
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2440
    ^ historyLines.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2441
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2442
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2443
immutableArrays
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2444
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2445
    immutableArrays isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2446
        immutableArrays := (Compiler arraysAreImmutable ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2447
        immutableArrays onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2448
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2449
    ^ immutableArrays.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2450
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2451
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2452
justInTimeCompilation
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2453
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2454
    justInTimeCompilation isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2455
        self supportsJustInTimeCompilation ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2456
            justInTimeCompilation := (ObjectMemory justInTimeCompilation ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2457
        ] ifFalse:[ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2458
            justInTimeCompilation := false asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2459
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2460
        justInTimeCompilation onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2461
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2462
    ^ justInTimeCompilation.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2463
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2464
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2465
keepSource
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2466
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2467
    keepSource isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2468
        keepSource := (resources array:(self class keepSourceStrings)) asList.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2469
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2470
    ^ keepSource.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2471
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2472
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2473
keepSourceSelection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2474
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2475
    keepSourceSelection isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2476
        keepSourceSelection := (self class keepSourceOptions indexOf:ClassCategoryReader sourceMode ifAbsent:1) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2477
        keepSourceSelection onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2478
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2479
    ^ keepSourceSelection.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2480
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2481
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2482
loadBinaries
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2483
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2484
    loadBinaries isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2485
        self canLoadBinaries ifTrue:[ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2486
            loadBinaries:=  Smalltalk loadBinaries asValue
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2487
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2488
            loadBinaries:=  false asValue
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2489
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2490
        loadBinaries onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2491
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2492
    ^ loadBinaries.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2493
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2494
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2495
modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2496
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2497
    modifiedChannel isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2498
        modifiedChannel := false asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2499
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2500
    ^ modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2501
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2502
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2503
stcCompilationList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2504
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2505
    stcCompilationList isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2506
        self thisIsADemoVersion ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2507
            stcCompilationList := (resources array:(self class stcCompilationDemoStrings)) asList.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2508
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2509
            stcCompilationList := (resources array:(self class stcCompilationFullVersionStrings)) asList.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2510
        ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2511
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2512
    ^ stcCompilationList.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2513
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2514
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2515
stcCompilationSelection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2516
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2517
    stcCompilationSelection isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2518
        self thisIsADemoVersion ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2519
            stcCompilationSelection := (self class stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:2) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2520
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2521
            stcCompilationSelection := 2 asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2522
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2523
        stcCompilationSelection onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2524
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2525
    ^ stcCompilationSelection.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2526
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2527
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2528
warnCommonMistakes
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2529
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2530
    warnCommonMistakes isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2531
        warnCommonMistakes := (Compiler warnCommonMistakes ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2532
        warnCommonMistakes onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2533
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2534
    ^ warnCommonMistakes.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2535
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2536
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2537
warnCompatibility
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2538
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2539
    warnCompatibility isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2540
        warnCompatibility := (Compiler warnPossibleIncompatibilities ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2541
        warnCompatibility onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2542
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2543
    ^ warnCompatibility.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2544
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2545
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2546
warnDollar
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2547
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2548
    warnDollar isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2549
        warnDollar := (Compiler warnDollarInIdentifier ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2550
        warnDollar onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2551
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2552
    ^ warnDollar.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2553
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2554
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2555
warnOldStyle
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2556
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2557
    warnOldStyle isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2558
        warnOldStyle := (Compiler warnOldStyleAssignment ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2559
        warnOldStyle onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2560
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2561
    ^ warnOldStyle.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2562
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2563
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2564
warnSTX
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2565
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2566
    warnSTX isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2567
        warnSTX := (Compiler warnSTXSpecials ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2568
        warnSTX onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2569
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2570
    ^ warnSTX.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2571
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2572
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2573
warnUnderscore
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2574
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2575
    warnUnderscore isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2576
        warnUnderscore := (Compiler warnUnderscoreInIdentifier ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2577
        warnUnderscore onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2578
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2579
    ^ warnUnderscore.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2580
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2581
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2582
warnUnusedVars
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2583
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2584
    warnUnusedVars isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2585
        warnUnusedVars := (Compiler warnUnusedVars ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2586
        warnUnusedVars onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2587
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2588
    ^ warnUnusedVars.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2589
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2590
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2591
warnings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2592
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2593
    warnings isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2594
        warnings := (Compiler warnings ? false) asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2595
        warnings addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2596
        warnings changed.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2597
        warnings onChangeSend:#evaluateModified to:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2598
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2599
    ^ warnings.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2600
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2601
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2602
!AbstractLauncherApplication::CompilerSettingsAppl methodsFor:'change & update'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2603
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2604
update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2605
    "Invoked when an object that I depend upon sends a change notification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2606
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2607
    "stub code automatically generated - please change as required"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2608
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2609
    changedObject == self warnings ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2610
        self warnings value ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2611
            self enableUnderscore value:self allowUnderscore value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2612
            self enableDollar value:self allowDollar value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2613
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2614
            self enableUnderscore value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2615
            self enableDollar value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2616
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2617
        ^ self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2618
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2619
    (changedObject == self allowDollar or:[changedObject == self allowUnderscore]) ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2620
        self warnings changed.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2621
        ^ self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2622
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2623
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2624
    super update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2625
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2626
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2627
!AbstractLauncherApplication::CompilerSettingsAppl methodsFor:'initialization & release'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2628
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2629
closeRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2630
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2631
    self saveRequest ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2632
        ^ self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2633
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2634
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2635
    ^ super closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2636
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2637
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2638
initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2639
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2640
    resources := self class owningClass classResources.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2641
    super initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2642
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2643
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2644
!AbstractLauncherApplication::CompilerSettingsAppl methodsFor:'queries'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2645
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2646
hasHistoryManager
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2647
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2648
    ^ HistoryManager notNil and:[HistoryManager isLoaded and:[HistoryManager isActive]]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2649
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2650
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2651
hasUnsavedChanges
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2652
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2653
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2654
        (
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2655
        ((HistoryManager fullHistoryUpdate ? false) ~= self fullHistoryUpdate value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2656
        ((Class catchMethodRedefinitions ? false) ~= self catchMethodRedefs value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2657
        ((Class catchClassRedefinitions ? false) ~= self catchClassRedefs value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2658
        ((ClassCategoryReader sourceMode) ~= (self class keepSourceOptions at:self keepSourceSelection value)) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2659
        ((Compiler warnings ? false) ~= self warnings value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2660
        ((Compiler warnSTXSpecials ? false) ~= self warnSTX value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2661
        ((Compiler warnOldStyleAssignment ? false) ~= self warnOldStyle value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2662
        ((Compiler warnUnderscoreInIdentifier ? false) ~= self warnUnderscore value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2663
        ((Compiler warnDollarInIdentifier ? false) ~= self warnDollar value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2664
        ((Compiler warnCommonMistakes ? false) ~= self warnCommonMistakes value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2665
        ((Compiler warnPossibleIncompatibilities ? false) ~= self warnCompatibility value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2666
        ((Compiler warnUnusedVars ? false) ~= self warnUnusedVars value)  or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2667
        ((Compiler allowUnderscoreInIdentifier ? false) ~= self allowUnderscore value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2668
        ((Compiler allowDollarInIdentifier ? false) ~= self allowDollar value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2669
        ((Compiler allowSqueakExtensions ? false) ~= self allowSqueakExtensions value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2670
        ((Compiler allowDolphinExtensions ? false) ~= self allowDolphinExtensions value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2671
        ((Compiler allowQualifiedNames ? false) ~= self allowQualifiedNames value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2672
        ((Compiler allowOldStyleAssignment ? false) ~= self allowOldStyleAssignment value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2673
        ((Compiler allowReservedWordsAsSelectors ? false) ~= self allowReservedWordsAsSelectors value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2674
        ((Compiler arraysAreImmutable ? false) ~= self immutableArrays value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2675
        ((self supportsJustInTimeCompilation value ifTrue:[ObjectMemory fullSingleStepSupport ? false] ifFalse:[Compiler lineNumberInfo == #full]) ~= self fullDebugSupport value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2676
        ((Compiler stcCompilation) ~= (self class stcCompilationOptions at:self stcCompilationSelection value)) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2677
        ((Compiler foldConstants) ~= (self class constantFoldingOptions at:self constantFoldingSelection value)) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2678
        ((ObjectMemory justInTimeCompilation ? false) ~= self justInTimeCompilation value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2679
        ((Autoload compileLazy ? false) ~= self compileLazy value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2680
        ((Smalltalk loadBinaries ? false) ~= self loadBinaries value) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2681
        ((self hasHistoryManager) ~= self historyLines value) ]]]]]]]]]]]]]]]]]]]]]]]]]])
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2682
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2683
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2684
supportsJustInTimeCompilation
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2685
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2686
    ^ ObjectMemory supportsJustInTimeCompilation
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2687
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2688
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2689
thisIsADemoVersion
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2690
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2691
    ^ Smalltalk releaseIdentification = 'ST/X_free_demo_vsn'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2692
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2693
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2694
!AbstractLauncherApplication::FontSettingsAppl class methodsFor:'defaults'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2695
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2696
widgetList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2697
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2698
    ^  #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2699
        'All' 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2700
        'Labels' 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2701
        'Buttons' 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2702
        'Lists' 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2703
        'Menus' 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2704
        'Edited Text'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2705
       )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2706
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2707
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2708
!AbstractLauncherApplication::FontSettingsAppl class methodsFor:'instance creation'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2709
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2710
fontForEncoding:encodingMatch
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2711
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2712
    | inst |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2713
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2714
    inst := self new.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2715
    inst encodingMatch:encodingMatch.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2716
    self initialize.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2717
    self open.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2718
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2719
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2720
!AbstractLauncherApplication::FontSettingsAppl class methodsFor:'interface specs'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2721
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2722
windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2723
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2724
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2725
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2726
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2727
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2728
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2729
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2730
     UIPainter new openOnClass:AbstractLauncherApplication::FontSettingsAppl andSelector:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2731
     AbstractLauncherApplication::FontSettingsAppl new openInterface:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2732
     AbstractLauncherApplication::FontSettingsAppl open
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2733
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2734
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2735
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2736
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2737
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2738
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2739
        #name: #windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2740
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2741
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2742
          #label: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2743
          #name: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2744
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2745
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2746
          #bounds: #(#Rectangle 16 42 490 353)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2747
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2748
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2749
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2750
          #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2751
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2752
              #name: 'AllBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2753
              #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 50 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2754
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2755
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2756
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2757
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2758
                    #label: 'All'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2759
                    #name: 'All'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2760
                    #layout: #(#LayoutFrame 0 0.0 0 0 100 0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2761
                    #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2762
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2763
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2764
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2765
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2766
                    #label: 'Label'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2767
                    #name: 'AllFont'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2768
                    #layout: #(#LayoutFrame 105 0 22 0 -5 1 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2769
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2770
                    #labelChannel: #allFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2771
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2772
                    #postBuildCallback: #postBuildAllFontLabel:
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2773
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2774
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2775
                    #label: 'Change ...'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2776
                    #name: 'ChangeAll'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2777
                    #layout: #(#LayoutFrame 0 0.0 22 0 105 0 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2778
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2779
                    #model: #changeAllFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2780
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2781
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2782
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2783
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2784
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2785
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2786
              #name: 'Separator1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2787
              #layout: #(#LayoutFrame 0 0.0 50 0 0 1.0 54 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2788
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2789
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2790
              #name: 'LabelsBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2791
              #layout: #(#LayoutFrame 0 0.0 55 0 0 1.0 105 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2792
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2793
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2794
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2795
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2796
                    #label: 'Labels'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2797
                    #name: 'Labels'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2798
                    #layout: #(#LayoutFrame 0 0.0 0 0 100 0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2799
                    #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2800
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2801
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2802
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2803
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2804
                    #label: 'Labels'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2805
                    #name: 'LabelsFont'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2806
                    #layout: #(#LayoutFrame 105 0 22 0 -5 1 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2807
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2808
                    #labelChannel: #labelsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2809
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2810
                    #postBuildCallback: #postBuildLabelsFontLabel:
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2811
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2812
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2813
                    #label: 'Change ...'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2814
                    #name: 'ChangeLabels'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2815
                    #layout: #(#LayoutFrame 0 0.0 22 0 105 0 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2816
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2817
                    #model: #changeLabelsFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2818
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2819
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2820
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2821
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2822
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2823
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2824
              #name: 'Separator2'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2825
              #layout: #(#LayoutFrame 0 0.0 105 0 0 1.0 109 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2826
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2827
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2828
              #name: 'ButtonsBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2829
              #layout: #(#LayoutFrame 0 0.0 110 0 0 1.0 160 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2830
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2831
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2832
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2833
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2834
                    #label: 'Buttons'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2835
                    #name: 'Buttons'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2836
                    #layout: #(#LayoutFrame 0 0.0 0 0 100 0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2837
                    #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2838
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2839
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2840
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2841
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2842
                    #label: 'Buttons Font'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2843
                    #name: 'ButtonsFont'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2844
                    #layout: #(#LayoutFrame 105 0 22 0 -5 1 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2845
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2846
                    #labelChannel: #buttonsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2847
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2848
                    #postBuildCallback: #postBuildButtonsFontLabel:
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2849
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2850
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2851
                    #label: 'Change ...'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2852
                    #name: 'Change Buttons'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2853
                    #layout: #(#LayoutFrame 0 0.0 22 0 105 0 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2854
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2855
                    #model: #changeButtonsFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2856
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2857
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2858
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2859
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2860
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2861
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2862
              #name: 'Separator3'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2863
              #layout: #(#LayoutFrame 0 0.0 160 0 0 1.0 164 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2864
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2865
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2866
              #name: 'ListsBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2867
              #layout: #(#LayoutFrame 0 0.0 165 0 0 1.0 215 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2868
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2869
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2870
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2871
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2872
                    #label: 'Lists'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2873
                    #name: 'Lists'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2874
                    #layout: #(#LayoutFrame 0 0.0 0 0 100 0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2875
                    #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2876
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2877
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2878
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2879
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2880
                    #label: 'Lists Font'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2881
                    #name: 'ListsFont'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2882
                    #layout: #(#LayoutFrame 105 0 22 0 -5 1 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2883
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2884
                    #labelChannel: #listsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2885
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2886
                    #postBuildCallback: #postBuildListsFontLabel:
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2887
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2888
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2889
                    #label: 'Change ...'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2890
                    #name: 'ChangeLists'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2891
                    #layout: #(#LayoutFrame 0 0.0 22 0 105 0 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2892
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2893
                    #model: #changeListsFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2894
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2895
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2896
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2897
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2898
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2899
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2900
              #name: 'Separator4'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2901
              #layout: #(#LayoutFrame 0 0.0 215 0 0 1.0 219 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2902
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2903
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2904
              #name: 'MenusBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2905
              #layout: #(#LayoutFrame 0 0.0 220 0 0 1.0 270 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2906
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2907
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2908
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2909
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2910
                    #label: 'Menus'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2911
                    #name: 'Menus'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2912
                    #layout: #(#LayoutFrame 0 0.0 0 0 100 0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2913
                    #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2914
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2915
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2916
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2917
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2918
                    #label: 'Menus Font'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2919
                    #name: 'MenusFont'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2920
                    #layout: #(#LayoutFrame 105 0 22 0 -5 1 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2921
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2922
                    #labelChannel: #menusFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2923
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2924
                    #postBuildCallback: #postBuildMenuesFontLabel:
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2925
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2926
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2927
                    #label: 'Change ...'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2928
                    #name: 'ChangeMenus'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2929
                    #layout: #(#LayoutFrame 0 0.0 22 0 105 0 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2930
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2931
                    #model: #changeMenusFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2932
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2933
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2934
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2935
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2936
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2937
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2938
              #name: 'Separator5'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2939
              #layout: #(#LayoutFrame 0 0.0 270 0 0 1.0 274 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2940
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2941
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2942
              #name: 'TextBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2943
              #layout: #(#LayoutFrame 0 0.0 280 0 0 1.0 340 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2944
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2945
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2946
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2947
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2948
                    #label: 'Text'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2949
                    #name: 'Text'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2950
                    #layout: #(#LayoutFrame 0 0.0 0 0 100 0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2951
                    #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2952
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2953
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2954
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2955
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2956
                    #label: 'Text Font'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2957
                    #name: 'TextFont'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2958
                    #layout: #(#LayoutFrame 105 0 22 0 -5 1 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2959
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2960
                    #labelChannel: #textFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2961
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2962
                    #postBuildCallback: #postBuildTextFontLabel:
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2963
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2964
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2965
                    #label: 'Change ...'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2966
                    #name: 'ChangeText'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2967
                    #layout: #(#LayoutFrame 0 0.0 22 0 105 0 44 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2968
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2969
                    #model: #changeTextFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2970
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2971
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2972
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2973
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2974
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2975
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2976
              #name: 'Separator6'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2977
              #layout: #(#LayoutFrame 0 0.0 340 0 0 1.0 344 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2978
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2979
           #(#HorizontalPanelViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2980
              #name: 'HorizontalPanel1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2981
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2982
              #horizontalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2983
              #verticalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2984
              #horizontalSpace: 0
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2985
              #verticalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2986
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2987
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2988
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2989
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2990
                    #label: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2991
                    #name: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2992
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2993
                    #model: #saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2994
                    #enableChannel: #modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2995
                    #extent: #(#Point 100 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2996
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2997
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2998
                    #label: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  2999
                    #name: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3000
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3001
                    #model: #doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3002
                    #extent: #(#Point 100 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3003
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3004
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3005
                    #label: 'Defaults'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3006
                    #name: 'Button1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3007
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3008
                    #model: #loadRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3009
                    #extent: #(#Point 100 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3010
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3011
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3012
                    #label: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3013
                    #name: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3014
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3015
                    #model: #help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3016
                    #extent: #(#Point 100 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3017
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3018
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3019
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3020
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3021
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3022
           )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3023
         
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3024
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3025
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3026
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3027
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3028
windowSpec2
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3029
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3030
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3031
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3032
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3033
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3034
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3035
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3036
     UIPainter new openOnClass:AbstractLauncherApplication::FontSettingsAppl andSelector:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3037
     AbstractLauncherApplication::FontSettingsAppl new openInterface:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3038
     AbstractLauncherApplication::FontSettingsAppl open
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3039
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3040
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3041
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3042
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3043
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3044
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3045
        #name: #windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3046
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3047
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3048
          #label: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3049
          #name: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3050
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3051
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3052
          #bounds: #(#Rectangle 16 42 491 533)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3053
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3054
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3055
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3056
          #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3057
           #(#HorizontalPanelViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3058
              #name: 'HorizontalPanel1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3059
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3060
              #horizontalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3061
              #verticalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3062
              #horizontalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3063
              #verticalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3064
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3065
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3066
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3067
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3068
                    #label: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3069
                    #name: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3070
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3071
                    #model: #saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3072
                    #enableChannel: #modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3073
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3074
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3075
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3076
                    #label: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3077
                    #name: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3078
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3079
                    #model: #doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3080
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3081
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3082
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3083
                    #label: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3084
                    #name: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3085
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3086
                    #model: #help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3087
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3088
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3089
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3090
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3091
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3092
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3093
           #(#SequenceViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3094
              #name: 'WidgetList'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3095
              #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 105 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3096
              #model: #selectedWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3097
              #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3098
              #hasHorizontalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3099
              #hasVerticalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3100
              #useIndex: false
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3101
              #sequenceList: #widgetList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3102
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3103
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3104
              #name: 'Box1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3105
              #layout: #(#LayoutFrame 0 0.0 105 0 0 1.0 -34 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3106
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3107
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3108
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3109
                 #(#NonScrollableArbitraryComponentSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3110
                    #name: 'FontPanel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3111
                    #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3112
                    #component: #FontPanel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3113
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3114
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3115
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3116
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3117
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3118
           )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3119
         
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3120
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3121
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3122
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3123
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3124
windowSpecFirst
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3125
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3126
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3127
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3128
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3129
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3130
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3131
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3132
     UIPainter new openOnClass:AbstractLauncherApplication::FontSettingsAppl andSelector:#windowSpecFirst
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3133
     AbstractLauncherApplication::FontSettingsAppl new openInterface:#windowSpecFirst
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3134
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3135
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3136
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3137
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3138
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3139
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3140
        #name: #windowSpecFirst
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3141
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3142
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3143
          #label: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3144
          #name: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3145
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3146
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3147
          #bounds: #(#Rectangle 16 42 491 456)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3148
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3149
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3150
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3151
          #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3152
           #(#HorizontalPanelViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3153
              #name: 'HorizontalPanel1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3154
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3155
              #horizontalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3156
              #verticalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3157
              #horizontalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3158
              #verticalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3159
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3160
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3161
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3162
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3163
                    #label: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3164
                    #name: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3165
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3166
                    #model: #saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3167
                    #enableChannel: #modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3168
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3169
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3170
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3171
                    #label: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3172
                    #name: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3173
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3174
                    #model: #doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3175
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3176
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3177
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3178
                    #label: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3179
                    #name: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3180
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3181
                    #model: #help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3182
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3183
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3184
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3185
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3186
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3187
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3188
           )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3189
         
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3190
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3191
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3192
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3193
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3194
windowSpecx
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3195
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3196
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3197
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3198
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3199
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3200
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3201
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3202
     UIPainter new openOnClass:AbstractLauncherApplication::FontSettingsAppl andSelector:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3203
     AbstractLauncherApplication::FontSettingsAppl new openInterface:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3204
     AbstractLauncherApplication::FontSettingsAppl open
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3205
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3206
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3207
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3208
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3209
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3210
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3211
        #name: #windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3212
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3213
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3214
          #label: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3215
          #name: 'Font Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3216
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3217
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3218
          #bounds: #(#Rectangle 16 42 491 533)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3219
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3220
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3221
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3222
          #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3223
           #(#HorizontalPanelViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3224
              #name: 'HorizontalPanel1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3225
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3226
              #horizontalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3227
              #verticalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3228
              #horizontalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3229
              #verticalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3230
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3231
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3232
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3233
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3234
                    #label: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3235
                    #name: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3236
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3237
                    #model: #saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3238
                    #enableChannel: #modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3239
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3240
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3241
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3242
                    #label: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3243
                    #name: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3244
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3245
                    #model: #doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3246
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3247
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3248
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3249
                    #label: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3250
                    #name: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3251
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3252
                    #model: #help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3253
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3254
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3255
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3256
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3257
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3258
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3259
           #(#SequenceViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3260
              #name: 'WidgetList'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3261
              #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 105 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3262
              #model: #selectedWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3263
              #style: #(#FontDescription #helvetica #bold #roman 12)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3264
              #hasHorizontalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3265
              #hasVerticalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3266
              #useIndex: false
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3267
              #sequenceList: #widgetList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3268
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3269
           #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3270
              #name: 'Box1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3271
              #layout: #(#LayoutFrame 0 0.0 105 0 0 1.0 -34 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3272
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3273
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3274
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3275
                 #(#TextEditorSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3276
                    #name: 'ExampleText'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3277
                    #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 145 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3278
                    #model: #exampleText
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3279
                    #hasHorizontalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3280
                    #hasVerticalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3281
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3282
                 #(#VariableHorizontalPanelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3283
                    #name: 'VariableHorizontalPanel1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3284
                    #layout: #(#LayoutFrame 0 0.0 145 0 0 1.0 -20 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3285
                    #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3286
                   #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3287
                      #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3288
                       #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3289
                          #name: 'FamilyBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3290
                          #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3291
                         #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3292
                            #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3293
                             #(#SequenceViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3294
                                #name: 'FamilyList'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3295
                                #layout: #(#LayoutFrame 0 0.0 20 0.0 0 1.0 0 1.0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3296
                                #model: #selectedFamily
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3297
                                #hasHorizontalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3298
                                #hasVerticalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3299
                                #useIndex: false
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3300
                                #sequenceList: #familyList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3301
                              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3302
                             #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3303
                                #label: 'Family'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3304
                                #name: 'FamilyLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3305
                                #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3306
                                #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3307
                              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3308
                             )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3309
                           
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3310
                          )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3311
                        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3312
                       #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3313
                          #name: 'TypeFaceBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3314
                          #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3315
                         #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3316
                            #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3317
                             #(#SequenceViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3318
                                #name: 'TypeFaceList'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3319
                                #layout: #(#LayoutFrame 0 0.0 20 0.0 0 1.0 0 1.0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3320
                                #model: #selectedTypeFace
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3321
                                #hasHorizontalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3322
                                #hasVerticalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3323
                                #useIndex: false
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3324
                                #sequenceList: #typeFaceList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3325
                              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3326
                             #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3327
                                #label: 'TypeFace'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3328
                                #name: 'TypeFaceLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3329
                                #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3330
                                #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3331
                              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3332
                             )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3333
                           
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3334
                          )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3335
                        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3336
                       #(#ViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3337
                          #name: 'SizeListBox'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3338
                          #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3339
                         #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3340
                            #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3341
                             #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3342
                                #label: 'Size'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3343
                                #name: 'SizeLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3344
                                #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 20 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3345
                                #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3346
                              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3347
                             #(#SequenceViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3348
                                #name: 'SizeList'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3349
                                #layout: #(#LayoutFrame 0 0.0 20 0.0 0 1.0 0 1.0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3350
                                #model: #selectedSize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3351
                                #hasHorizontalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3352
                                #hasVerticalScrollBar: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3353
                                #useIndex: false
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3354
                                #sequenceList: #sizeList
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3355
                              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3356
                             )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3357
                           
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3358
                          )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3359
                        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3360
                       )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3361
                     
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3362
                    )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3363
                    #handles: #(#Any 0.333333 0.666667 1.0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3364
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3365
                 #(#LabelSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3366
                    #label: 'CurrentFontLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3367
                    #name: 'CurrentFontLabel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3368
                    #layout: #(#LayoutFrame 0 0.0 -20 1 0 1.0 0 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3369
                    #level: -1
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3370
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3371
                    #labelChannel: #currentFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3372
                    #adjust: #left
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3373
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3374
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3375
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3376
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3377
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3378
           )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3379
         
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3380
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3381
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3382
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3383
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3384
!AbstractLauncherApplication::FontSettingsAppl methodsFor:'accessing'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3385
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3386
encodingMatch:aEncodingMatch
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3387
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3388
    aEncodingMatch notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3389
        filter := [:f | f encoding notNil 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3390
                        and:[aEncodingMatch match:f encoding]].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3391
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3392
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3393
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3394
!AbstractLauncherApplication::FontSettingsAppl methodsFor:'actions'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3395
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3396
changeAllFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3397
    |f|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3398
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3399
    f := FontPanel 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3400
        fontFromUserInitial:(self allOfThem value) 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3401
                      title:(resources string:'Font for %1' with:'All')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3402
                     filter:filter.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3403
    f notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3404
        self allOfThem value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3405
        self labelDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3406
        self buttonDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3407
        self listDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3408
        self menuDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3409
        self textDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3410
    ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3411
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3412
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3413
changeButtonsFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3414
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3415
    |f|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3416
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3417
    f := FontPanel 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3418
        fontFromUserInitial:(self allOfThem value) 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3419
                      title:(resources string:'Font for %1' with:'All')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3420
                     filter:filter.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3421
    f notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3422
        self allOfThem value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3423
    ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3424
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3425
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3426
changeLabelsFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3427
    |f|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3428
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3429
    f := FontPanel 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3430
        fontFromUserInitial:(self labelDef value) 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3431
                      title:(resources string:'Font for %1' with:'Labels')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3432
                     filter:filter.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3433
    f notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3434
        self labelDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3435
    ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3436
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3437
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3438
changeListsFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3439
    |f|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3440
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3441
    f := FontPanel 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3442
        fontFromUserInitial:(self listDef value) 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3443
                      title:(resources string:'Font for %1' with:'Lists')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3444
                     filter:filter.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3445
    f notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3446
        self listDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3447
    ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3448
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3449
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3450
changeMenusFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3451
    |f|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3452
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3453
    f := FontPanel 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3454
        fontFromUserInitial:(self menuDef value) 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3455
                      title:(resources string:'Font for %1' with:'Menus')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3456
                     filter:filter.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3457
    f notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3458
        self menuDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3459
    ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3460
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3461
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3462
changeTextFont
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3463
    |f|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3464
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3465
    f := FontPanel 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3466
        fontFromUserInitial:(self textDef value) 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3467
                      title:(resources string:'Font for %1' with:'Edited Text')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3468
                     filter:filter.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3469
    f notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3470
        self textDef value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3471
    ]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3472
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3473
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3474
doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3475
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3476
    self isPartOfSettinsDialog ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3477
        self loadRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3478
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3479
    self closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3480
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3481
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3482
evaluateModified
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3483
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3484
    self modifiedChannel value:(self hasUnsavedChanges).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3485
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3486
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3487
help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3488
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3489
    self warn:'no help available here'.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3490
"/    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/keyboardSetting.html'].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3491
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3492
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3493
loadRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3494
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3495
    View readStyleSheetAndUpdateAllStyleCaches.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3496
    self labelDef value:Label defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3497
    self buttonDef value:Button defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3498
    self listDef value:SelectionInListView defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3499
    self menuDef value:MenuView defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3500
    self textDef value:TextView defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3501
    self allOfThem value:nil.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3502
    self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3503
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3504
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3505
saveRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3506
    | result |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3507
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3508
    (self hasUnsavedChanges) ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3509
        result := self confirmWithCancel:(resources string:'Save changed Font Settings ?'). 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3510
        result isNil ifTrue:[ ^ false].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3511
        result ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3512
            self saveSettings.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3513
        ] 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3514
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3515
    ^ true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3516
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3517
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3518
saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3519
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3520
    | master requestor|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3521
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3522
    master := self masterApplication.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3523
    master notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3524
        requestor := master requestor.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3525
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3526
    self hasUnsavedChanges ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3527
        | launcher |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3528
        Label defaultFont:self labelDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3529
        Button defaultFont:self buttonDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3530
        Toggle defaultFont:self buttonDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3531
        TextView withAllSubclasses do:[:cls | cls defaultFont:self textDef value].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3532
        SelectionInListView withAllSubclasses do:[:cls | cls defaultFont:self listDef value].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3533
        MenuView defaultFont:self menuDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3534
        PullDownMenu defaultFont:self menuDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3535
        self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3536
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3537
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3538
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3539
!AbstractLauncherApplication::FontSettingsAppl methodsFor:'aspects'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3540
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3541
allFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3542
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3543
    allFontLabelHolder isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3544
        allFontLabelHolder := '' asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3545
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3546
    ^ allFontLabelHolder.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3547
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3548
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3549
allOfThem
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3550
    "return/create the 'allOfThem' value holder (automatically generated)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3551
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3552
    allOfThem isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3553
        allOfThem := ValueHolder new.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3554
        allOfThem addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3555
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3556
    ^ allOfThem
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3557
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3558
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3559
buttonDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3560
    "return/create the 'buttonDef' value holder (automatically generated)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3561
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3562
    buttonDef isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3563
        buttonDef := ValueHolder new.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3564
        buttonDef addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3565
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3566
    ^ buttonDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3567
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3568
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3569
buttonsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3570
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3571
    buttonsFontLabelHolder isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3572
        buttonsFontLabelHolder := Button defaultFont asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3573
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3574
    ^ buttonsFontLabelHolder.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3575
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3576
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3577
labelDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3578
    "return/create the 'labelDef' value holder (automatically generated)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3579
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3580
    labelDef isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3581
        labelDef := ValueHolder new.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3582
        labelDef addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3583
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3584
    ^ labelDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3585
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3586
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3587
labelsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3588
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3589
    labelsFontLabelHolder isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3590
        labelsFontLabelHolder := Label defaultFont asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3591
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3592
    ^ labelsFontLabelHolder.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3593
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3594
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3595
listDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3596
    "return/create the 'listDef' value holder (automatically generated)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3597
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3598
    listDef isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3599
        listDef := ValueHolder new.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3600
        listDef addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3601
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3602
    ^ listDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3603
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3604
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3605
listsFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3606
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3607
    listsFontLabelHolder isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3608
        listsFontLabelHolder := SelectionInListView defaultFont asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3609
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3610
    ^ listsFontLabelHolder.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3611
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3612
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3613
menuDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3614
    "return/create the 'menuDef' value holder (automatically generated)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3615
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3616
    menuDef isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3617
        menuDef := ValueHolder new.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3618
        menuDef addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3619
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3620
    ^ menuDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3621
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3622
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3623
menusFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3624
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3625
    menusFontLabelHolder isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3626
        menusFontLabelHolder := MenuView defaultFont asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3627
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3628
    ^ menusFontLabelHolder.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3629
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3630
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3631
modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3632
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3633
    modifiedChannel isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3634
        modifiedChannel := false asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3635
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3636
    ^ modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3637
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3638
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3639
textDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3640
    "return/create the 'textDef' value holder (automatically generated)"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3641
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3642
    textDef isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3643
        textDef := ValueHolder new.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3644
        textDef addDependent:self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3645
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3646
    ^ textDef
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3647
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3648
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3649
textFontLabelHolder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3650
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3651
    textFontLabelHolder isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3652
        textFontLabelHolder := TextView defaultFont asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3653
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3654
    ^ textFontLabelHolder.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3655
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3656
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3657
!AbstractLauncherApplication::FontSettingsAppl methodsFor:'change & update'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3658
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3659
update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3660
    "Invoked when an object that I depend upon sends a change notification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3661
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3662
    "stub code automatically generated - please change as required"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3663
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3664
    changedObject == self allOfThem ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3665
        | f label|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3666
        f := self allOfThem value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3667
        allLabel font:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3668
        label := f isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3669
            ''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3670
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3671
            f userFriendlyName
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3672
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3673
        self allFontLabelHolder value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3674
        self evaluateModified.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3675
        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3676
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3677
    changedObject == self labelDef ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3678
        | f label|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3679
        f := self labelDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3680
        labelLabel font:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3681
        label := f isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3682
            ''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3683
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3684
            f userFriendlyName
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3685
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3686
        self labelsFontLabelHolder value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3687
        self evaluateModified.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3688
        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3689
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3690
    changedObject == self buttonDef ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3691
        | f label|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3692
        f := self buttonDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3693
        buttonsLabel font:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3694
        label := f isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3695
            ''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3696
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3697
            f userFriendlyName
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3698
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3699
        self buttonsFontLabelHolder value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3700
        self evaluateModified.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3701
        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3702
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3703
    changedObject == self listDef ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3704
        | f label|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3705
        f := self listDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3706
        listsLabel font:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3707
        label := f isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3708
            ''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3709
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3710
            f userFriendlyName
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3711
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3712
        self listsFontLabelHolder value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3713
        self evaluateModified.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3714
        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3715
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3716
    changedObject == self menuDef ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3717
        | f label|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3718
        f := self menuDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3719
        menuLabel font:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3720
        label := f isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3721
            ''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3722
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3723
            f userFriendlyName
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3724
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3725
        self menusFontLabelHolder value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3726
        self evaluateModified.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3727
        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3728
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3729
    changedObject == self textDef ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3730
        | f label|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3731
        f := self textDef value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3732
        textLabel font:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3733
        label := f isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3734
            ''
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3735
        ] ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3736
            f userFriendlyName
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3737
        ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3738
        self evaluateModified.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3739
        self textFontLabelHolder value:f.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3740
        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3741
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3742
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3743
    super update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3744
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3745
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3746
!AbstractLauncherApplication::FontSettingsAppl methodsFor:'initialization & release'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3747
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3748
closeRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3749
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3750
    self saveRequest ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3751
        ^ self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3752
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3753
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3754
    ^ super closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3755
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3756
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3757
initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3758
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3759
    resources := self class owningClass classResources.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3760
    super initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3761
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3762
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3763
postBuildAllFontLabel:aWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3764
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3765
    allLabel := aWidget.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3766
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3767
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3768
postBuildButtonsFontLabel:aWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3769
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3770
    buttonsLabel := aWidget.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3771
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3772
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3773
postBuildLabelsFontLabel:aWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3774
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3775
    labelLabel := aWidget.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3776
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3777
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3778
postBuildListsFontLabel:aWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3779
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3780
    listsLabel := aWidget.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3781
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3782
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3783
postBuildMenuesFontLabel:aWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3784
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3785
    menuLabel := aWidget.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3786
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3787
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3788
postBuildTextFontLabel:aWidget
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3789
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3790
    textLabel := aWidget.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3791
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3792
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3793
postOpen
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3794
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3795
    self allOfThem value:nil.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3796
    self labelDef value:Label defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3797
    self buttonDef value:Button defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3798
    self listDef value:SelectionInListView defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3799
    self menuDef value:MenuView defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3800
    self textDef value:TextView defaultFont.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3801
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3802
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3803
postOpenAsSubcanvasWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3804
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3805
    self postOpen.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3806
    ^ super postOpenAsSubcanvasWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3807
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3808
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3809
postOpenWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3810
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3811
    self postOpen.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3812
    ^ super postOpenWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3813
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3814
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3815
!AbstractLauncherApplication::FontSettingsAppl methodsFor:'queries'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3816
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3817
hasUnsavedChanges
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3818
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3819
    ^ (self labelDef value ~= Label defaultFont) or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3820
       self buttonDef value ~= Button defaultFont or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3821
       self listDef value ~= SelectionInListView defaultFont or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3822
       self menuDef value ~= MenuView defaultFont or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3823
       self textDef value ~= TextView defaultFont ]]]]
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3824
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  3825
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  3826
!AbstractLauncherApplication::KbdMappingSettingsAppl class methodsFor:'interface specs'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  3827
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3828
windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3829
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3830
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3831
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3832
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3833
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3834
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3835
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3836
     UIPainter new openOnClass:AbstractLauncherApplication::KbdMappingSettingsAppl andSelector:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3837
     AbstractLauncherApplication::KbdMappingSettingsAppl new openInterface:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3838
     AbstractLauncherApplication::KbdMappingSettingsAppl open
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3839
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3840
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3841
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3842
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3843
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3844
     #(#FullSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3845
        #name: #windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3846
        #window: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3847
       #(#WindowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3848
          #label: 'Keyboard Mappings'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3849
          #name: 'Keyboard Mappings'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3850
          #min: #(#Point 10 10)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3851
          #max: #(#Point 1024 768)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3852
          #bounds: #(#Rectangle 16 42 491 620)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3853
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3854
        #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3855
       #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3856
          #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3857
           #(#VariableVerticalPanelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3858
              #name: 'VariableVerticalPanel1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3859
              #layout: #(#LayoutFrame 0 0.0 60 0 0 1.0 -34 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3860
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3861
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3862
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3863
                 #(#VariableHorizontalPanelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3864
                    #name: 'VariableHorizontalPanel1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3865
                    #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3866
                   #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3867
                      #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3868
                       #(#SequenceViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3869
                          #name: 'RawKeyList'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3870
                          #model: #selectedRawKey
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3871
                          #hasHorizontalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3872
                          #hasVerticalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3873
                          #useIndex: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3874
                          #sequenceList: #rawKeyList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3875
                        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3876
                       #(#SequenceViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3877
                          #name: 'FunctionKeyList'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3878
                          #model: #selectedFunctionKey
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3879
                          #hasHorizontalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3880
                          #hasVerticalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3881
                          #useIndex: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3882
                          #sequenceList: #functionKeyList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3883
                        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3884
                       )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3885
                     
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3886
                    )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3887
                    #handles: #(#Any 0.5 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3888
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3889
                 #(#ViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3890
                    #name: 'Box1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3891
                    #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3892
                   #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3893
                      #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3894
                       #(#TextEditorSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3895
                          #name: 'MacroText'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3896
                          #layout: #(#LayoutFrame 0 0.0 20 0 0 1.0 0 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3897
                          #model: #macroTextHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3898
                          #hasHorizontalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3899
                          #hasVerticalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3900
                          #isReadOnly: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3901
                        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3902
                       #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3903
                          #label: 'Macro text (if any):'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3904
                          #name: 'MacroTextLabel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3905
                          #layout: #(#LayoutFrame 0 0.0 0 0 0 1.0 20 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3906
                          #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3907
                          #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3908
                        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3909
                       )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3910
                     
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3911
                    )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3912
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3913
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3914
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3915
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3916
              #handles: #(#Any 0.5 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3917
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3918
           #(#HorizontalPanelViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3919
              #name: 'HorizontalPanel1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3920
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3921
              #horizontalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3922
              #verticalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3923
              #horizontalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3924
              #verticalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3925
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3926
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3927
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3928
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3929
                    #label: 'Close'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3930
                    #name: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3931
                    #visibilityChannel: #isNotPartOfSettinsDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3932
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3933
                    #model: #doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3934
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3935
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3936
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3937
                    #label: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3938
                    #name: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3939
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3940
                    #model: #help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3941
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3942
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3943
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3944
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3945
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3946
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3947
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3948
              #label: 'NoticeText'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3949
              #name: 'Text'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3950
              #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 60 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3951
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3952
              #labelChannel: #labelTextHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3953
              #resizeForLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3954
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3955
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3956
           )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3957
         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3958
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3959
      )
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  3960
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  3961
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  3962
!AbstractLauncherApplication::KbdMappingSettingsAppl methodsFor:'actions'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  3963
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3964
doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3965
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3966
    self isPartOfSettinsDialog ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3967
        self loadRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3968
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3969
    self closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3970
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3971
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3972
evaluateModified
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3973
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3974
    self modifiedChannel value:(self hasUnsavedChanges).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3975
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3976
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3977
help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3978
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3979
    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/keyboardSetting.html'].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3980
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3981
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3982
loadRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3983
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3984
    self modifiedChannel value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3985
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3986
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3987
saveRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3988
    | result |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3989
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3990
    (self hasUnsavedChanges) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3991
        result := self confirmWithCancel:(resources string:'Save changed Tool Settings ?'). 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3992
        result isNil ifTrue:[ ^ false].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3993
        result ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3994
            self saveSettings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3995
        ] 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3996
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3997
    ^ true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3998
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3999
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4000
saveSettings
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4001
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4002
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4003
!AbstractLauncherApplication::KbdMappingSettingsAppl methodsFor:'aspects'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4004
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4005
functionKeyList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4006
    "automatically generated by UIPainter ..."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4007
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4008
    "*** the code below creates a default model when invoked."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4009
    "*** (which may not be the one you wanted)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4010
    "*** Please change as required and accept it in the browser."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4011
    "*** (and replace this comment by something more useful ;-)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4012
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4013
    functionKeyList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4014
        functionKeyList := ValueHolder new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4015
"/ if your app needs to be notified of changes, uncomment one of the lines below:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4016
"/       functionKeyList addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4017
"/       functionKeyList onChangeSend:#functionKeyListChanged to:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4018
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4019
    ^ functionKeyList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4020
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4021
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4022
labelTextHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4023
    "automatically generated by UIPainter ..."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4024
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4025
    "*** the code below creates a default model when invoked."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4026
    "*** (which may not be the one you wanted)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4027
    "*** Please change as required and accept it in the browser."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4028
    "*** (and replace this comment by something more useful ;-)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4029
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4030
    labelTextHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4031
        labelTextHolder := ValueHolder new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4032
"/ if your app needs to be notified of changes, uncomment one of the lines below:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4033
"/       labelTextHolder addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4034
"/       labelTextHolder onChangeSend:#labelTextHolderChanged to:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4035
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4036
    ^ labelTextHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4037
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4038
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4039
macroTextHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4040
    "automatically generated by UIPainter ..."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4041
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4042
    "*** the code below creates a default model when invoked."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4043
    "*** (which may not be the one you wanted)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4044
    "*** Please change as required and accept it in the browser."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4045
    "*** (and replace this comment by something more useful ;-)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4046
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4047
    macroTextHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4048
        macroTextHolder := ValueHolder new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4049
"/ if your app needs to be notified of changes, uncomment one of the lines below:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4050
"/       macroTextHolder addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4051
"/       macroTextHolder onChangeSend:#macroTextHolderChanged to:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4052
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4053
    ^ macroTextHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4054
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4055
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4056
modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4057
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4058
    modifiedChannel isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4059
        modifiedChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4060
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4061
    ^ modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4062
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4063
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4064
rawKeyList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4065
    "automatically generated by UIPainter ..."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4066
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4067
    "*** the code below creates a default model when invoked."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4068
    "*** (which may not be the one you wanted)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4069
    "*** Please change as required and accept it in the browser."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4070
    "*** (and replace this comment by something more useful ;-)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4071
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4072
    rawKeyList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4073
        rawKeyList := List new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4074
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4075
    ^ rawKeyList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4076
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4077
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4078
selectedFunctionKey
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4079
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4080
    selectedFunctionKey isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4081
        selectedFunctionKey := ValueHolder new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4082
        selectedFunctionKey addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4083
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4084
    ^ selectedFunctionKey.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4085
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4086
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4087
selectedRawKey
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4088
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4089
    selectedRawKey isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4090
        selectedRawKey := ValueHolder new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4091
        selectedRawKey addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4092
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4093
    ^ selectedRawKey.
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
  4094
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
  4095
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
  4096
!AbstractLauncherApplication::KbdMappingSettingsAppl methodsFor:'change & update'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
  4097
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4098
changeFunctionKeySelection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4099
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4100
    |raw|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4101
    raw := self selectedRawKey value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4102
    self selectedFunctionKey value:(mappings at:raw asSymbol) asString.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4103
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4104
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4105
changeMacroText
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4106
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4107
    |f macro indent|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4108
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4109
    f := self selectedFunctionKey value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4110
    (f startsWith:'Cmd') ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4111
        f := f copyFrom:4
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4112
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4113
    macro := UserPreferences current functionKeySequences 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4114
                at:(f asSymbol) ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4115
    macro notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4116
        macro := macro asStringCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4117
        indent := macro
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4118
                     inject:99999 into:[:min :element |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4119
                         |stripped|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4120
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4121
                         stripped := element withoutLeadingSeparators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4122
                         stripped size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4123
                             min
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4124
                         ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4125
                             min min:(element size - stripped size)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4126
                         ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4127
                     ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4128
        indent ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4129
            macro := macro collect:[:line | 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4130
                         line size > indent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4131
                            line copyFrom:indent+1
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4132
                         ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4133
                            line
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4134
                         ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4135
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4136
        ].                        
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4137
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4138
    macroTextHolder value:macro.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4139
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4140
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4141
changeRawKeySelection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4142
    |f raw|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4143
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4144
    f := self selectedFunctionKey value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4145
    raw := mappings keyAtValue:f asString.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4146
    raw isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4147
        raw := mappings keyAtValue:f first.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4148
        raw isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4149
            raw := mappings keyAtValue:f asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4150
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4151
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4152
    self selectedRawKey value:raw.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4153
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4154
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4155
update:something with:aParameter from:changedObject
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4156
    "Invoked when an object that I depend upon sends a change notification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4157
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4158
    "stub code automatically generated - please change as required"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4159
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4160
    changedObject == self selectedFunctionKey ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4161
        self changeRawKeySelection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4162
        self changeMacroText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4163
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4164
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4165
    changedObject == self selectedRawKey ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4166
        self changeFunctionKeySelection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4167
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4168
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4169
    super update:something with:aParameter from:changedObject
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4170
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4171
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4172
!AbstractLauncherApplication::KbdMappingSettingsAppl methodsFor:'initialization & release'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4173
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4174
closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4175
    "This is a hook method generated by the Browser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4176
     It will be invoked when your app/dialog-window is really closed.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4177
     See also #closeDownViews, which is invoked before and may suppress the close
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4178
     or ask the user for confirmation."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4179
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4180
    "/ change the code below as required ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4181
    "/ This should cleanup any leftover resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4182
    "/ (for example, temporary files)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4183
    "/ super closeRequest will initiate the closeDown
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4184
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4185
    "/ add your code here
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4186
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4187
    "/ do not remove the one below ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4188
    ^ super closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4189
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4190
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4191
closeRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4192
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4193
    self saveRequest ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4194
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4195
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4196
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4197
    ^ super closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4198
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4199
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4200
initialize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4201
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4202
    resources := self class owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4203
    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4204
    mappings := Screen current keyboardMap.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4205
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4206
    rawKeyList := (mappings keys asArray collect:[:key | key asString]) sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4207
    functionKeyList := (mappings values asSet asArray collect:[:key | key asString]) sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4208
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4209
    self labelTextHolder value:(resources at:'KEY_MSG2' default:'keyboard mapping:') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4210
    super initialize
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4211
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4212
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4213
!AbstractLauncherApplication::KbdMappingSettingsAppl methodsFor:'queries'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4214
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4215
hasUnsavedChanges
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4216
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4217
    ^ false
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4218
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4219
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4220
!AbstractLauncherApplication::LanguageSettingsAppl class methodsFor:'interface specs'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4221
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4222
windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4223
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4224
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4225
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4226
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4227
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4228
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4229
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4230
     UIPainter new openOnClass:AbstractLauncherApplication::LanguageSettingsAppl andSelector:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4231
     AbstractLauncherApplication::LanguageSettingsAppl new openInterface:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4232
     AbstractLauncherApplication::LanguageSettingsAppl open
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4233
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4234
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4235
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4236
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4237
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4238
     #(#FullSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4239
        #name: #windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4240
        #window: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4241
       #(#WindowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4242
          #label: 'Language Settings'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4243
          #name: 'Language Settings'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4244
          #min: #(#Point 10 10)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4245
          #max: #(#Point 1024 768)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4246
          #bounds: #(#Rectangle 16 42 491 713)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4247
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4248
        #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4249
       #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4250
          #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4251
           #(#InputFieldSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4252
              #name: 'EntryField1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4253
              #layout: #(#LayoutFrame 0 0.0 105 0 0 1.0 125 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4254
              #model: #languageHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4255
              #acceptOnReturn: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4256
              #acceptOnTab: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4257
              #acceptOnLostFocus: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4258
              #acceptOnPointerLeave: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4259
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4260
           #(#SequenceViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4261
              #name: 'List1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4262
              #layout: #(#LayoutFrame 0 0.0 125 0 0 1.0 -34 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4263
              #model: #languageHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4264
              #hasHorizontalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4265
              #hasVerticalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4266
              #doubleClickSelector: #doubleClick:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4267
              #useIndex: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4268
              #sequenceList: #languageList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4269
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4270
           #(#HorizontalPanelViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4271
              #name: 'HorizontalPanel1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4272
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4273
              #horizontalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4274
              #verticalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4275
              #horizontalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4276
              #verticalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4277
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4278
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4279
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4280
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4281
                    #label: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4282
                    #name: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4283
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4284
                    #model: #saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4285
                    #enableChannel: #modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4286
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4287
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4288
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4289
                    #label: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4290
                    #name: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4291
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4292
                    #model: #doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4293
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4294
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4295
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4296
                    #label: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4297
                    #name: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4298
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4299
                    #model: #help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4300
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4301
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4302
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4303
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4304
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4305
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4306
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4307
              #label: 'Notice:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4308
              #name: 'Notice'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4309
              #layout: #(#LayoutFrame 0 0 0 0 0 1.0 105 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4310
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4311
              #labelChannel: #noticeLabelHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4312
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4313
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4314
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4315
              #label: 'Label'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4316
              #name: 'CurrentLang'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4317
              #layout: #(#LayoutFrame -150 1 0 0 0 1 20 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4318
              #style: #(#FontDescription #helvetica #bold #roman 12)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4319
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4320
              #labelChannel: #currentLanguageChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4321
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4322
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4323
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4324
              #label: 'Current Language:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4325
              #name: 'Label1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4326
              #layout: #(#LayoutFrame 190 0 0 0 -150 1 20 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4327
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4328
              #labelChannel: #currentLanguageLabel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4329
              #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4330
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4331
           )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4332
         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4333
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4334
      )
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4335
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4336
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4337
!AbstractLauncherApplication::LanguageSettingsAppl methodsFor:'accessing'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4338
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4339
languageList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4340
    "return the value of the instance variable 'languageList' (automatically generated)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4341
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4342
    ^ languageList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4343
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4344
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4345
requestor
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4346
    "return the value of the instance variable 'requestor' (automatically generated)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4347
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4348
    | masterApplication |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4349
    masterApplication := self masterApplication.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4350
    masterApplication notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4351
        ^ masterApplication requestor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4352
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4353
    ^ nil
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4354
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4355
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4356
!AbstractLauncherApplication::LanguageSettingsAppl methodsFor:'actions'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4357
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4358
doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4359
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4360
    self isPartOfSettinsDialog ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4361
        self loadRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4362
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4363
    self closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4364
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4365
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4366
doubleClick:aEntry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4367
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4368
    self saveSettings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4369
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4370
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4371
evaluateModified
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4372
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4373
    self modifiedChannel value:(self hasUnsavedChanges).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4374
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4375
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4376
help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4377
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4378
    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/languageSetting.html'].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4379
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4380
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4381
loadRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4382
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4383
    self languageHolder value:self currentLanguage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4384
    self currentLanguageChannel value:self currentLanguage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4385
    self modifiedChannel value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4386
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4387
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4388
saveRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4389
    | result |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4390
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4391
    (self hasUnsavedChanges) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4392
        result := self confirmWithCancel:(resources string:'Save changed Language Settings ?'). 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4393
        result isNil ifTrue:[ ^ false].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4394
        result ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4395
            self saveSettings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4396
        ] 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4397
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4398
    ^ true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4399
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4400
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4401
saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4402
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4403
    |fontPref idx language oldLanguage territory enc 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4404
     answer matchingFonts l screen newLanguage switch|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4405
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4406
    newLanguage := self languageHolder value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4407
    self withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4408
        idx := translatedLanguages indexOf:newLanguage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4409
        idx ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4410
            language := listOfLanguages at:idx
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4411
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4412
            language := newLanguage
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4413
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4414
        (language includes:$-) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4415
            l := language asCollectionOfSubstringsSeparatedBy:$-.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4416
            language := l at:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4417
            territory := l at:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4418
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4419
        territory isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4420
            territory := language copyTo:2
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4421
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4422
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4423
        "/ check if the new language needs a differently encoded font;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4424
        "/ ask user to switch font and allow cancellation.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4425
        "/ Otherwise, you are left with unreadable menu & button items ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4426
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4427
        oldLanguage := Smalltalk language.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4428
        Smalltalk language:language asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4429
        ResourcePack flushCachedResourcePacks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4430
        "/ refetch resources ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4431
        resources := AbstractLauncherApplication classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4432
        fontPref := resources at:'PREFERRED_FONT_ENCODING' default:'iso8859*'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4433
        fontPref := fontPref asLowercase.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4434
        Smalltalk language:oldLanguage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4435
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4436
        switch := true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4437
        enc := MenuView defaultFont encoding.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4438
        (fontPref match:enc asLowercase) ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4439
            "/ look if there is one at all.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4440
            screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4441
            matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4442
            matchingFonts size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4443
                "/ flush and try again - just in case, the font path has changed.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4444
                screen flushListOfAvailableFonts.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4445
                matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4446
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4447
            matchingFonts size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4448
                (Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4449
                    confirm:(resources 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4450
                                string:'Your display does not offer any %1-encoded font.\\Change the language anyway ?\ (texts will probably be unreadable then)'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4451
                                  with:fontPref) withCRs)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4452
                ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4453
                    switch := false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4454
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4455
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4456
                answer := Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4457
                            confirmWithCancel:(resources 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4458
                                                    string:'menu font is not %1-encoded.\\Change it ?'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4459
                                                    with:fontPref) withCRs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4460
                                       labels:(resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4461
                                                    array:#('cancel' 'no' 'yes'))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4462
                                       default:3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4463
                answer isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4464
                    switch := false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4465
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4466
                    answer ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4467
                        switch := ( self requestor fontBoxForEncoding:fontPref)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4468
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4469
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4470
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4471
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4472
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4473
        switch ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4474
            Transcript showCR:'change language to ' , newLanguage , ' ...'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4475
            Smalltalk language:language asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4476
            Smalltalk languageTerritory:territory asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4477
            "/ ResourcePack flushCachedResourcePacks - already done by language-change
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4478
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4479
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4480
    switch ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4481
        self requestor notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4482
            self requestor reopenLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4483
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4484
        DebugView newDebugger.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4485
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4486
    self currentLanguageChannel value:self currentLanguage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4487
    self modifiedChannel value:false.
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4488
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4489
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4490
!AbstractLauncherApplication::LanguageSettingsAppl methodsFor:'aspects'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4491
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4492
currentLanguageChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4493
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4494
    currentLanguageChannel isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4495
        currentLanguageChannel := self currentLanguage asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4496
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4497
    ^ currentLanguageChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4498
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4499
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4500
currentLanguageLabel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4501
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4502
    currentLanguageLabel isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4503
        currentLanguageLabel := (resources string:'Current Language:') asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4504
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4505
    ^ currentLanguageLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4506
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4507
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4508
languageHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4509
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4510
    languageHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4511
        languageHolder := self currentLanguage asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4512
        languageHolder onChangeSend:#evaluateModified to:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4513
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4514
    ^ languageHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4515
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4516
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4517
modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4518
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4519
    modifiedChannel isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4520
        modifiedChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4521
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4522
    ^ modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4523
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4524
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4525
noticeLabelHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4526
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4527
    noticeLabelHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4528
        noticeLabelHolder := ((resources at:'LANG_MSG' default:'Select a Language') withCRs) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4529
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4530
    ^ noticeLabelHolder.
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4531
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4532
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4533
!AbstractLauncherApplication::LanguageSettingsAppl methodsFor:'initialization & release'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4534
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4535
closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4536
    "This is a hook method generated by the Browser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4537
     It will be invoked when your app/dialog-window is really closed.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4538
     See also #closeDownViews, which is invoked before and may suppress the close
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4539
     or ask the user for confirmation."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4540
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4541
    "/ change the code below as required ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4542
    "/ This should cleanup any leftover resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4543
    "/ (for example, temporary files)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4544
    "/ super closeRequest will initiate the closeDown
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4545
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4546
    "/ add your code here
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4547
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4548
    "/ do not remove the one below ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4549
    ^ super closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4550
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4551
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4552
closeRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4553
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4554
    self saveRequest ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4555
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4556
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4557
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4558
    ^ super closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4559
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4560
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4561
initialize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4562
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4563
    |flags|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4564
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4565
    resources := self class owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4566
    listOfLanguages := resources at:'LIST_OF_OFFERED_LANGUAGES' default:#('default').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4567
    listOfLanguages := listOfLanguages asOrderedCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4568
    translatedLanguages := listOfLanguages collect:[:lang | |item|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4569
                                        item := resources at:lang.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4570
                                        item isString ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4571
                                            item
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4572
                                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4573
                                            item at:1
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4574
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4575
                                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4576
    flags := listOfLanguages collect:[:lang | |item|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4577
                                        item := resources at:lang.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4578
                                        item isArray ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4579
                                            item at:2
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4580
                                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4581
                                            nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4582
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4583
                                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4584
    flags := flags collect:[:nm | |img d| nm notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4585
                                            img := Image fromFile:nm.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4586
                                            img isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4587
                                                d := Smalltalk getPackageDirectoryForPackage:'stx:goodies'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4588
                                                img := Image fromFile:(d construct:nm).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4589
                                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4590
                                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4591
                                            nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4592
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4593
                           ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4594
    listOfLanguages := listOfLanguages collect:[:nm | nm copyFrom:'LANG_' size + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4595
    languageList := translatedLanguages with:flags collect:[:lang :flag | LabelAndIcon icon:flag string:lang.].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4596
    super initialize
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4597
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4598
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4599
!AbstractLauncherApplication::LanguageSettingsAppl methodsFor:'queries'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4600
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4601
currentLanguage
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4602
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4603
    | lang |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4604
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4605
    lang := Language ~= LanguageTerritory ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4606
        Language , '-' , LanguageTerritory
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4607
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4608
        Language
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4609
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4610
    ^ languageList at:(listOfLanguages indexOf:lang)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4611
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4612
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4613
hasUnsavedChanges
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4614
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4615
    ^ (self languageHolder value) ~= (self currentLanguage)  
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4616
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  4617
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  4618
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  4619
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4620
communicationsSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4621
    "open a dialog on communications settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4622
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4623
    |box check in resources y acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4624
     hasRDoitServer rDoitServerPort
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4625
     rDoitsEnabled rDoitLogging rDoitErrorLogging rDoitErrorDebugging 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4626
     org_rDoitsEnabled org_rDoitLogging org_rDoitErrorLogging org_rDoitErrorDebugging org_rDoitServerPort
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4627
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4628
     hasRemoteBrowsingSupport remoteBrowsingEnabled org_remoteBrowsingEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4629
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4630
     hasWindowMigrationServer windowMigrationAuthenticate windowMigrationPassword
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4631
     windowMigrationEnabled  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4632
     org_windowMigrationEnabled org_windowMigrationAuthenticate org_windowMigrationPassword
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4633
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4634
     hasHTTPServer httpServerRunning httpServerFileRoot httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4635
     httpServerPort httpServerLogFile hasSwiki swikiEnabled swikiRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4636
     allowEmbedded hasSoap soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4637
     org_httpServerRunning org_httpServerFileRoot org_httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4638
     org_httpServerPort org_swikiRoot org_swikiEnabled org_httpServerLogFile
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4639
     org_allowEmbedded org_soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4640
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4641
     osiACSEPresent osiROSEPresent osiCMISEPresent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4642
     osiACSEErrorLogging osiACSEConnectionLogging osiACSEDataLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4643
     osiROSEErrorLogging osiROSEResponseLogging osiROSEInvokationLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4644
     osiCMISEErrorLogging osiCMISEMessageLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4645
    |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4646
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4647
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4648
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4649
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4650
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4651
    "/ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4652
    "/ extract relevant remoteBrowsing settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4653
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4654
    remoteBrowsingEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4655
    (hasRemoteBrowsingSupport := SmalltalkShareServer notNil) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4656
        SmalltalkShareServer isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4657
            remoteBrowsingEnabled := SmalltalkShareServer serverRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4658
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4659
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4660
    org_remoteBrowsingEnabled := remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4661
    remoteBrowsingEnabled := remoteBrowsingEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4662
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4663
    "/ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4664
    "/ extract relevant windowMigration settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4665
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4666
    windowMigrationEnabled := windowMigrationAuthenticate := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4667
    (hasWindowMigrationServer := WindowMigrationServer notNil) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4668
        WindowMigrationServer isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4669
            windowMigrationEnabled := WindowMigrationServer serverRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4670
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4671
        windowMigrationPassword := WindowMigrationServer password.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4672
        windowMigrationAuthenticate := windowMigrationPassword notNil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4673
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4674
    org_windowMigrationEnabled := windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4675
    windowMigrationEnabled := windowMigrationEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4676
    org_windowMigrationAuthenticate := windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4677
    windowMigrationAuthenticate := windowMigrationAuthenticate asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4678
    org_windowMigrationPassword := windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4679
    windowMigrationPassword := windowMigrationPassword asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4680
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4681
    "/ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4682
    "/ extract relevant rdoit settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4683
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4684
    rDoitsEnabled := rDoitLogging := rDoitErrorLogging := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4685
    (hasRDoitServer := RDoItServer notNil) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4686
        RDoItServer isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4687
            rDoitsEnabled := RDoItServer serverRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4688
            rDoitLogging := RDoItServer isLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4689
            rDoitErrorLogging := RDoItServer isErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4690
            rDoitErrorDebugging := RDoItServer isErrorCatching not.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4691
            rDoitServerPort := RDoItServer defaultPortNumber.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4692
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4693
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4694
    org_rDoitsEnabled := rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4695
    org_rDoitLogging := rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4696
    org_rDoitErrorLogging := rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4697
    org_rDoitErrorDebugging := rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4698
    org_rDoitServerPort := rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4699
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4700
    rDoitServerPort := rDoitServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4701
    rDoitsEnabled := rDoitsEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4702
    rDoitLogging := rDoitLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4703
    rDoitErrorLogging := rDoitErrorLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4704
    rDoitErrorDebugging := rDoitErrorDebugging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4705
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4706
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4707
    "/ extract http-server settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4708
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4709
    hasHTTPServer := httpServerRunning := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4710
    (hasHTTPServer := HTTPServer notNil) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4711
        HTTPServer isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4712
            httpServerRunning := HTTPServer isRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4713
            httpServerFileRoot := HTTPServer fileRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4714
            httpServerHomeURL := HTTPServer homeURL.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4715
            httpServerPort := HTTPServer defaultPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4716
            httpServerLogFile := HTTPServer defaultLogFile.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4717
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4718
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4719
    org_httpServerRunning := httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4720
    httpServerRunning := httpServerRunning asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4721
    org_httpServerFileRoot := httpServerFileRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4722
    httpServerFileRoot := httpServerFileRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4723
    org_httpServerHomeURL := httpServerHomeURL.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4724
    httpServerHomeURL := httpServerHomeURL asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4725
    org_httpServerPort := httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4726
    httpServerPort := httpServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4727
    org_httpServerLogFile := httpServerLogFile.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4728
    httpServerLogFile := httpServerLogFile asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4729
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4730
    httpServerRunning 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4731
        onChangeEvaluate:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4732
            httpServerFileRoot value:(HTTPServer fileRoot).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4733
            httpServerHomeURL value:(HTTPServer homeURL).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4734
            httpServerPort value:(HTTPServer defaultPort).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4735
            httpServerLogFile value:(HTTPServer defaultLogFile)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4736
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4737
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4738
    hasSwiki := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4739
    swikiEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4740
    soapEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4741
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4742
    (hasSwiki := PWS::SwikiAction notNil) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4743
        PWS::SwikiAction isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4744
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4745
                swikiEnabled := HTTPServer hasMySwikiConfigured.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4746
                swikiRoot := PWS::SwikiAction serverDirectory.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4747
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4748
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4749
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4750
    (hasSoap := SOAP::SoapHttpModule notNil) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4751
        SOAP::SoapHttpModule isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4752
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4753
                soapEnabled := HTTPServer hasSoapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4754
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4755
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4756
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4757
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4758
    org_swikiRoot := swikiRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4759
    org_swikiEnabled := swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4760
    org_soapEnabled := soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4761
    swikiRoot := swikiRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4762
    swikiEnabled := swikiEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4763
    soapEnabled := soapEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4764
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4765
    swikiEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4766
        onChangeEvaluate:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4767
            swikiRoot value:(PWS::SwikiAction serverDirectory).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4768
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4769
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4770
    allowEmbedded := HTTPServer isLoaded and:[HTTPServer enableEmbeddedSmalltalk].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4771
    org_allowEmbedded := allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4772
    allowEmbedded := allowEmbedded asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4773
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4774
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4775
    "/ osi settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4776
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4777
    osiACSEPresent := OSI::ACSE notNil and:[OSI::ACSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4778
    osiROSEPresent := OSI::ROSE notNil and:[OSI::ROSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4779
    osiCMISEPresent := OSI::CMISE notNil and:[OSI::CMISE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4780
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4781
    osiACSEPresent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4782
        osiACSEErrorLogging := OSI::ACSE errorLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4783
        osiACSEConnectionLogging := OSI::ACSE connectionLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4784
        osiACSEDataLogging :=  OSI::ACSE dataLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4785
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4786
    osiROSEPresent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4787
        osiROSEErrorLogging := OSI::ROSE errorLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4788
        osiROSEInvokationLogging := OSI::ROSE invocationLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4789
        osiROSEResponseLogging :=  OSI::ROSE responseLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4790
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4791
    osiCMISEPresent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4792
        osiCMISEErrorLogging := OSI::CMISE errorLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4793
        osiCMISEMessageLogging := OSI::CMISE messageLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4794
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4795
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4796
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4797
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4798
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4799
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4800
    box label:(resources string:'Communication settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4801
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4802
    box addTextLabel:(resources string:'Remote browsing').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4803
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4804
    check := box addCheckBox:(resources string:'Remote browsing enabled') on:remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4805
    hasRemoteBrowsingSupport ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4806
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4807
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4808
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4809
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4810
    box addTextLabel:(resources string:'Window migration').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4811
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4812
    check := box addCheckBox:(resources string:'Window migration enabled') on:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4813
    hasWindowMigrationServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4814
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4815
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4816
    check := box addCheckBox:(resources string:'Password check') on:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4817
    check enableChannel:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4818
    hasWindowMigrationServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4819
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4820
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4821
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4822
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4823
            addLabelledInputField:(resources string:'Password:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4824
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4825
            on:nil 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4826
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4827
            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4828
    in passwordCharacter:$*.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4829
    in model:windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4830
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4831
    in enableChannel:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4832
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4833
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4834
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4835
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4836
    box addTextLabel:'RDoIt Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4837
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4838
    check := box addCheckBox:(resources string:'Remote doits enabled') on:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4839
    hasRDoitServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4840
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4841
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4842
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4843
    rDoitsEnabled onChangeEvaluate:[ rDoitsEnabled value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4844
                                        rDoitServerPort value isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4845
                                            rDoitServerPort value:(RDoItServer defaultPortNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4846
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4847
                                     ]   
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4848
                                   ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4849
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4850
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4851
            addLabelledInputField:(resources string:'Port:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4852
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4853
            on:nil 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4854
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4855
            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4856
    in converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4857
    in model:rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4858
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4859
    in enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4860
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4861
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4862
    check := box addCheckBox:(resources string:'Log errors') on:rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4863
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4864
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4865
    hasRDoitServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4866
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4867
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4868
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4869
    check := box addCheckBox:(resources string:'Log requests') on:rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4870
    check left:0.4; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4871
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4872
    hasRDoitServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4873
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4874
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4875
    check := box addCheckBox:(resources string:'Debug errors') on:rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4876
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4877
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4878
    hasRDoitServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4879
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4880
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4881
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4882
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4883
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4884
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4885
    box addTextLabel:'HTTP Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4886
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4887
    check := box addCheckBox:(resources string:'Serving HTTP Requests') on:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4888
    hasHTTPServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4889
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4890
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4891
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4892
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4893
            addLabelledInputField:(resources string:'Port:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4894
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4895
            on:nil 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4896
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4897
            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4898
    in converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4899
    in model:httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4900
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4901
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4902
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4903
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4904
            addLabelledInputField:(resources string:'Log File:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4905
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4906
            on:httpServerLogFile 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4907
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4908
            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4909
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4910
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4911
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4912
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4913
            addLabelledInputField:(resources string:'File Root:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4914
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4915
            on:httpServerFileRoot 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4916
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4917
            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4918
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4919
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4920
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4921
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4922
            addLabelledInputField:(resources string:'Home URL:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4923
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4924
            on:httpServerHomeURL 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4925
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4926
            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4927
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4928
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4929
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4930
    check := box addCheckBox:(resources string:'Swiki enabled') on:swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4931
    hasHTTPServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4932
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4933
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4934
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4935
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4936
"/    box leftIndent:40.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4937
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4938
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4939
            addLabelledInputField:(resources string:'SwikiRoot:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4940
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4941
            on:swikiRoot 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4942
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4943
            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4944
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4945
    in enableChannel:(BlockValue forLogical:httpServerRunning and:swikiEnabled).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4946
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4947
    check := box addCheckBox:(resources string:'Allow embedded ST applications') on:allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4948
    hasHTTPServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4949
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4950
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4951
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4952
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4953
    check := box addCheckBox:(resources string:'Soap enabled') on:soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4954
    hasHTTPServer ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4955
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4956
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4957
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4958
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4959
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4960
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4961
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4962
    box addTextLabel:(resources string:'OSI Protocols (addOn package)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4963
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4964
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4965
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ACSE') on:osiACSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4966
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4967
    osiACSEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4968
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4969
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4970
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4971
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4972
    check := box addCheckBox:(resources string:'Connections') on:osiACSEConnectionLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4973
    osiACSEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4974
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4975
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4976
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4977
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4978
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4979
    check := box addCheckBox:(resources string:'Data Xfer') on:osiACSEDataLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4980
    osiACSEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4981
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4982
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4983
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4984
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4985
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4986
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4987
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4988
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4989
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ROSE') on:osiROSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4990
    osiROSEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4991
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4992
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4993
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4994
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4995
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4996
    check := box addCheckBox:(resources string:'Invoactions') on:osiROSEInvokationLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4997
    osiROSEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4998
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4999
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5000
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5001
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5002
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5003
    check := box addCheckBox:(resources string:'Responses') on:osiROSEResponseLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5004
    osiROSEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5005
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5006
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5007
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5008
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5009
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5010
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5011
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5012
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'CMISE') on:osiCMISEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5013
    osiCMISEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5014
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5015
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5016
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5017
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5018
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5019
    check := box addCheckBox:(resources string:'Messages') on:osiCMISEMessageLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5020
    osiCMISEPresent ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5021
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5022
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5023
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5024
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5025
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5026
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5027
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5028
        addHelpButtonFor:'Launcher/communicationsSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5029
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5030
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5031
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5032
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5033
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5034
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5035
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5036
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5037
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5038
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5039
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5040
        acceptChannel value:false; value:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5041
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5042
        hasRemoteBrowsingSupport ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5043
            remoteBrowsingEnabled := remoteBrowsingEnabled value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5044
            (remoteBrowsingEnabled ~~ org_remoteBrowsingEnabled) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5045
                remoteBrowsingEnabled ~~ SmalltalkShareServer serverRunning ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5046
                    remoteBrowsingEnabled ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5047
                        SmalltalkShareServer killAll
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5048
                    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5049
                        SmalltalkShareServer start.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5050
                        "/ must wait a bit; give it a chance to
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5051
                        "/ really start (before checking)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5052
                        Delay waitForSeconds:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5053
                        SmalltalkShareServer serverRunning ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5054
                            self warn:'SmalltalkShareServer startup failed (see stderr).'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5055
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5056
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5057
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5058
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5059
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5060
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5061
        hasWindowMigrationServer ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5062
            windowMigrationEnabled := windowMigrationEnabled value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5063
            windowMigrationAuthenticate := windowMigrationAuthenticate value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5064
            windowMigrationPassword := windowMigrationPassword value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5065
            (windowMigrationEnabled ~~ org_windowMigrationEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5066
            or:[windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5067
            or:[windowMigrationPassword ~~ org_windowMigrationPassword]])  ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5068
                windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5069
                    windowMigrationAuthenticate ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5070
                        WindowMigrationServer password:nil    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5071
                    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5072
                        WindowMigrationServer password:windowMigrationPassword    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5073
                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5074
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5075
                windowMigrationEnabled ~~ WindowMigrationServer serverRunning ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5076
                    windowMigrationEnabled ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5077
                        WindowMigrationServer stop
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5078
                    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5079
                        WindowMigrationServer start.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5080
                        "/ must wait a bit; give it a chance to
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5081
                        "/ really start (before checking)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5082
                        Delay waitForSeconds:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5083
                        WindowMigrationServer serverRunning ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5084
                            self warn:'WindowMigrationServer startup failed (see stderr).'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5085
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5086
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5087
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5088
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5089
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5090
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5091
        hasRDoitServer ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5092
            (rDoitLogging value ~~ org_rDoitLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5093
            or:[rDoitErrorDebugging value ~~ org_rDoitErrorDebugging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5094
            or:[rDoitErrorLogging value ~~ org_rDoitErrorLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5095
            or:[rDoitsEnabled value ~~ org_rDoitsEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5096
            or:[rDoitServerPort value ~~ org_rDoitServerPort]]]]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5097
                RDoItServer autoload.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5098
                RDoItServer defaultPortNumber:rDoitServerPort value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5099
                RDoItServer logging:(rDoitLogging value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5100
                RDoItServer errorLogging:(rDoitErrorLogging value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5101
                RDoItServer errorCatching:(rDoitErrorDebugging value not).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5102
                rDoitsEnabled := rDoitsEnabled value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5103
                rDoitsEnabled ~~ RDoItServer serverRunning ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5104
                    rDoitsEnabled ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5105
                        RDoItServer stop
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5106
                    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5107
                        RDoItServer start.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5108
                        "/ must wait a bit; give it a chance to
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5109
                        "/ really start (before checking)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5110
                        Delay waitForSeconds:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5111
                        RDoItServer serverRunning ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5112
                            self warn:'RDoit startup failed (see stderr).'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5113
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5114
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5115
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5116
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5117
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5118
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5119
        (hasHTTPServer and:[HTTPServer isLoaded]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5120
            httpServerPort := httpServerPort value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5121
            org_httpServerPort ~= httpServerPort ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5122
                HTTPServer defaultPort:httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5123
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5124
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5125
            httpServerFileRoot := httpServerFileRoot value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5126
            httpServerFileRoot size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5127
                httpServerFileRoot := nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5128
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5129
            org_httpServerFileRoot ~= httpServerFileRoot ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5130
                HTTPServer fileRoot:httpServerFileRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5131
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5132
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5133
            httpServerLogFile := httpServerLogFile value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5134
            httpServerLogFile size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5135
                httpServerLogFile := nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5136
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5137
            org_httpServerLogFile ~= httpServerLogFile ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5138
                HTTPServer defaultLogFile:httpServerLogFile.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5139
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5140
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5141
            httpServerHomeURL := httpServerHomeURL value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5142
            httpServerHomeURL size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5143
                httpServerHomeURL := nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5144
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5145
            org_httpServerHomeURL ~= httpServerHomeURL ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5146
                HTTPServer homeURL:httpServerHomeURL.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5147
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5148
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5149
            httpServerRunning value ~~ org_httpServerRunning ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5150
                httpServerRunning value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5151
                    HTTPServer startServer
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5152
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5153
                    HTTPServer stopServer
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5154
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5155
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5156
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5157
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5158
        hasSwiki ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5159
            swikiRoot := swikiRoot value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5160
            swikiRoot size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5161
                swikiRoot := nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5162
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5163
            org_swikiRoot ~= swikiRoot ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5164
                PWS::ServerAction serverDirectory:swikiRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5165
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5166
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5167
            swikiEnabled value ~~ org_swikiEnabled ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5168
                swikiEnabled value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5169
                    HTTPServer setupMySwiki
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5170
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5171
                    HTTPServer disableMySwiki
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5172
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5173
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5174
            allowEmbedded value ~~ org_allowEmbedded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5175
                HTTPServer enableEmbeddedSmalltalk:allowEmbedded value
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5176
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5177
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5178
        hasSoap ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5179
            soapEnabled value ~~ org_soapEnabled ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5180
                soapEnabled value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5181
                    HTTPServer setupSoap
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5182
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5183
                    HTTPServer disableSoap
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5184
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5185
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5186
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5187
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5188
        osiACSEPresent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5189
            OSI::ACSE errorLogging:osiACSEErrorLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5190
            OSI::ACSE connectionLogging:osiACSEConnectionLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5191
            OSI::ACSE dataLogging:osiACSEDataLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5192
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5193
        osiROSEPresent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5194
            OSI::ROSE errorLogging:osiROSEErrorLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5195
            OSI::ROSE invocationLogging:osiROSEInvokationLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5196
            OSI::ROSE responseLogging:osiROSEResponseLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5197
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5198
        osiCMISEPresent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5199
            OSI::CMISE errorLogging:osiCMISEErrorLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5200
            OSI::CMISE messageLogging:osiCMISEMessageLogging value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5201
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5202
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5203
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5204
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5205
    "Modified: / 28.6.1999 / 15:44:35 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5206
    "Modified: / 20.1.2000 / 19:14:18 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5207
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5208
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5209
compilerSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5210
    "open a dialog on compiler related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5211
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5212
    |box warnings warnSTX warnUnderscore warnDollar warnOldStyle warnUnusedVars
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5213
     allowDollar allowUnderscore allowSqueakExtensions allowQualifiedNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5214
     allowDolphinExtensions allowOldStyleAssignment allowReservedWordsAsSelectors 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5215
     immutableArrays
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5216
     warnSTXBox warnUnderscoreBox warnOldStyleBox warnCommonMistakes warnCommonMistakesBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5217
     warnCompatibility warnCompatibilityBox warnDollarBox warnUnusedVarsBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5218
     stcCompilation compilationList stcCompilationOptions 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5219
     historyLines fullHistoryUpdate 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5220
     catchMethodRedefs catchClassRedefs keepSourceOptions keepSource  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5221
     constantFoldingOptions constantFolding justInTimeCompilation 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5222
     warnEnabler check component oldIndent supportsJustInTimeCompilation y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5223
     y2 fullDebugSupport yMax
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5224
     compileLazy loadBinaries canLoadBinaries strings idx thisIsADemoVersion
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5225
     resources stcSetupButt|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5226
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5227
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5228
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5229
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5230
    loadBinaries := Smalltalk loadBinaries asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5231
    compileLazy := Autoload compileLazy asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5232
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5233
    warnings := Compiler warnings asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5234
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5235
    warnSTX := Compiler warnSTXSpecials asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5236
    warnUnderscore := Compiler warnUnderscoreInIdentifier asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5237
    warnDollar := Compiler warnDollarInIdentifier asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5238
    warnOldStyle := Compiler warnOldStyleAssignment asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5239
    warnCommonMistakes := Compiler warnCommonMistakes asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5240
    warnCompatibility := Compiler warnPossibleIncompatibilities asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5241
    warnUnusedVars := Compiler warnUnusedVars asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5242
    allowUnderscore := Compiler allowUnderscoreInIdentifier asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5243
    allowDollar := Compiler allowDollarInIdentifier asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5244
    allowSqueakExtensions := Compiler allowSqueakExtensions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5245
    allowDolphinExtensions := Compiler allowDolphinExtensions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5246
    allowQualifiedNames := Compiler allowQualifiedNames asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5247
    allowOldStyleAssignment := Compiler allowOldStyleAssignment asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5248
    allowReservedWordsAsSelectors := Compiler allowReservedWordsAsSelectors asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5249
    immutableArrays := Compiler arraysAreImmutable asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5250
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5251
    constantFoldingOptions := #( nil #level1 #level2 #full ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5252
    constantFolding := SelectionInList new list:(resources array:#('disabled' 'level1 (always safe)' 'level2 (usually safe)' 'full')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5253
    constantFolding selectionIndex:3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5254
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5255
    thisIsADemoVersion := (Smalltalk releaseIdentification = 'ST/X_free_demo_vsn').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5256
    thisIsADemoVersion ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5257
        stcCompilationOptions := #( never).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5258
        strings := #('never').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5259
        idx := 1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5260
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5261
        stcCompilationOptions := #( always default never).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5262
        strings := #('always' 'primitive code only' 'never').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5263
        idx := 2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5264
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5265
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5266
    stcCompilation := SelectionInList new list:(resources array:strings).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5267
    stcCompilation selectionIndex:idx.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5268
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5269
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5270
    ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5271
        justInTimeCompilation := ObjectMemory justInTimeCompilation.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5272
        fullDebugSupport := ObjectMemory fullSingleStepSupport.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5273
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5274
        justInTimeCompilation := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5275
        fullDebugSupport := (Compiler lineNumberInfo == #full) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5276
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5277
    justInTimeCompilation := justInTimeCompilation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5278
    fullDebugSupport := fullDebugSupport asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5279
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5280
    catchMethodRedefs := Class catchMethodRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5281
    catchClassRedefs := Class catchClassRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5282
    historyLines := HistoryManager notNil and:[HistoryManager isLoaded and:[HistoryManager isActive]].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5283
    historyLines ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5284
        fullHistoryUpdate := false asValue   
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5285
    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5286
        fullHistoryUpdate := HistoryManager fullHistoryUpdate asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5287
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5288
    historyLines := historyLines asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5289
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5290
    keepSourceOptions := #( keep reference absReference sourceReference discard ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5291
    keepSource := SelectionInList new 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5292
                        list:(resources array:#('Keep as String' 'Reference to Filename' 'Reference to Full Path' 'Append and Ref in `st.src''' 'Discard' )).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5293
    keepSource selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5294
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5295
    warnEnabler := [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5296
              warnings value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5297
                warnSTXBox enable. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5298
                warnOldStyleBox enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5299
                warnCommonMistakesBox enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5300
                warnCompatibilityBox enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5301
                warnUnusedVarsBox enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5302
                allowUnderscore value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5303
                    warnUnderscoreBox enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5304
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5305
                    warnUnderscoreBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5306
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5307
                allowDollar value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5308
                    warnDollarBox enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5309
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5310
                    warnDollarBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5311
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5312
              ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5313
                warnSTXBox disable. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5314
                warnUnderscoreBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5315
                warnDollarBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5316
                warnOldStyleBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5317
                warnCommonMistakesBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5318
                warnCompatibilityBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5319
                warnUnusedVarsBox disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5320
              ]].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5321
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5322
    warnings onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5323
    allowUnderscore onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5324
    allowDollar onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5325
"/    allowSqueakExtensions onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5326
"/    allowQualifiedNames onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5327
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5328
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5329
    box label:(resources string:'Compiler Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5330
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5331
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5332
    check := box addCheckBox:(resources string:'Catch Method Redefinitions') on:catchMethodRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5333
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5334
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5335
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5336
    check := box addCheckBox:(resources string:'Catch Class Redefinitions') on:catchClassRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5337
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5338
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5339
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5340
    check := box addCheckBox:(resources string:'Keep History Line in Methods') on:historyLines.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5341
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5342
    HistoryManager isNil ifTrue:[check disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5343
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5344
    check := box addCheckBox:(resources string:'Keep Full Class History') on:fullHistoryUpdate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5345
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5346
    HistoryManager isNil ifTrue:[check disable] ifFalse:[check enableChannel:historyLines].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5347
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5348
    box addPopUpList:(resources string:'FileIn Source Mode:') on:keepSource.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5349
    keepSource selectionIndex:( keepSourceOptions indexOf:(ClassCategoryReader sourceMode) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5350
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5351
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5352
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5353
    box addCheckBox:(resources string:'Lazy Compilation when Autoloading') on:compileLazy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5354
    check := box addCheckBox:(resources string:'If Present, Load Binary Objects when Autoloading') on:loadBinaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5355
    canLoadBinaries ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5356
        loadBinaries value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5357
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5358
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5359
    supportsJustInTimeCompilation ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5360
        component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5361
                        addCheckBox:(resources string:'Just in Time Compilation to Machine Code') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5362
                        on:justInTimeCompilation.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5363
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5364
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5365
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5366
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5367
    ObjectFileLoader notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5368
        compilationList := box addPopUpList:(resources string:'Stc Compilation to Machine Code') on:stcCompilation.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5369
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5370
        thisIsADemoVersion ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5371
            stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5372
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5373
            stcSetupButt := box addComponent:(Button label:(resources string:'Stc Compilation Parameters...') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5374
                       action:[|manager|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5375
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5376
                               self stcCompilerSettings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5377
                              ]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5378
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5379
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5380
        box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5381
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5382
        "/ if there is no compiler around,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5383
        "/ change to compile nothing, and disable the checkBoxes
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5384
        Compiler canCreateMachineCode ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5385
            stcCompilation selectionIndex:(3 min:stcCompilationOptions size).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5386
            compilationList disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5387
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5388
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5389
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5390
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5391
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5392
    component := box addCheckBox:(resources string:'Allow Underscore in Identifiers') on:allowUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5393
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5394
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5395
    component := box addCheckBox:(resources string:'Allow Dollar in Identifiers') on:allowDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5396
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5397
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5398
    component := box addCheckBox:(resources string:'Allow VW3 QualifiedNames') on:allowQualifiedNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5399
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5400
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5401
    component := box addCheckBox:(resources string:'Allow Squeak Extensions') on:allowSqueakExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5402
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5403
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5404
    component := box addCheckBox:(resources string:'Allow Dolphin Extensions') on:allowDolphinExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5405
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5406
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5407
    y2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5408
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5409
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5410
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5411
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5412
    component :=box addPopUpList:(resources string:'Constant Folding:') on:constantFolding.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5413
    component superView left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5414
    constantFolding selectionIndex:( constantFoldingOptions indexOf:(Compiler foldConstants) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5415
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5416
    component := box addCheckBox:(resources string:'Allow OldStyle Assignment (_)') on:allowOldStyleAssignment.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5417
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5418
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5419
    component := box addCheckBox:(resources string:'Allow Reserved Words as Selector (self)') on:allowReservedWordsAsSelectors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5420
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5421
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5422
    component := box addCheckBox:(resources string:'Full Debug Info') on:fullDebugSupport.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5423
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5424
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5425
    component := box addCheckBox:(resources string:'Literal Arrays are Immutable') on:immutableArrays.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5426
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5427
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5428
    box yPosition:(box yPosition max:y2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5429
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5430
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5431
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5432
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5433
    box addCheckBox:(resources string:'Warnings') on:warnings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5434
"/    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5435
    oldIndent := box leftIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5436
    box leftIndent:30.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5437
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5438
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5439
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5440
    warnSTXBox := box addCheckBox:(resources string:'ST/X Extensions') on:warnSTX.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5441
    warnSTXBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5442
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5443
    warnUnderscoreBox := box addCheckBox:(resources string:'Underscores in Identifiers') on:warnUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5444
    warnUnderscoreBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5445
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5446
    warnDollarBox := box addCheckBox:(resources string:'Dollars in Identifiers') on:warnDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5447
    warnDollarBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5448
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5449
    warnUnusedVarsBox := box addCheckBox:(resources string:'Unused Method Variables') on:warnUnusedVars.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5450
    warnUnusedVarsBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5451
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5452
    yMax := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5453
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5454
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5455
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5456
    warnOldStyleBox := box addCheckBox:(resources string:'OldStyle Assignment') on:warnOldStyle.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5457
    warnOldStyleBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5458
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5459
    warnCommonMistakesBox := box addCheckBox:(resources string:'Common Mistakes') on:warnCommonMistakes.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5460
    warnCommonMistakesBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5461
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5462
    warnCompatibilityBox := box addCheckBox:(resources string:'Possible Incompatibilities') on:warnCompatibility.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5463
    warnCompatibilityBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5464
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5465
    box leftIndent:oldIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5466
    box yPosition:(yMax max: box yPosition).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5467
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5468
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5469
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5470
        addHelpButtonFor:'Launcher/compilerSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5471
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5472
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5473
    warnEnabler value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5474
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5475
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5476
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5477
        HistoryManager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5478
            HistoryManager fullHistoryUpdate:fullHistoryUpdate value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5479
            historyLines value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5480
                HistoryManager activate
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5481
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5482
                HistoryManager deactivate
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5483
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5484
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5485
        Class catchMethodRedefinitions:catchMethodRedefs value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5486
        Class catchClassRedefinitions:catchClassRedefs value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5487
        ClassCategoryReader sourceMode:(keepSourceOptions at:keepSource selectionIndex).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5488
        Compiler warnings:warnings value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5489
        Compiler warnSTXSpecials:warnSTX value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5490
        Compiler warnOldStyleAssignment:warnOldStyle value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5491
        Compiler warnUnderscoreInIdentifier:warnUnderscore value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5492
        Compiler warnDollarInIdentifier:warnDollar value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5493
        Compiler warnCommonMistakes:warnCommonMistakes value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5494
        Compiler warnPossibleIncompatibilities:warnCompatibility value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5495
        Compiler warnUnusedVars:warnUnusedVars value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5496
        Compiler allowUnderscoreInIdentifier:allowUnderscore value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5497
        Compiler allowDollarInIdentifier:allowDollar value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5498
        Compiler allowSqueakExtensions:allowSqueakExtensions value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5499
        Compiler allowDolphinExtensions:allowDolphinExtensions value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5500
        Compiler allowQualifiedNames:allowQualifiedNames value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5501
        Compiler allowOldStyleAssignment:allowOldStyleAssignment value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5502
        Compiler allowReservedWordsAsSelectors:allowReservedWordsAsSelectors value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5503
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5504
        Compiler arraysAreImmutable:immutableArrays value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5505
        fullDebugSupport value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5506
            Compiler lineNumberInfo:#full.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5507
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5508
            Compiler lineNumberInfo:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5509
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5510
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5511
        Compiler stcCompilation:(stcCompilationOptions at:stcCompilation selectionIndex).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5512
        Compiler foldConstants:(constantFoldingOptions at:constantFolding selectionIndex).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5513
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5514
        supportsJustInTimeCompilation ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5515
            justInTimeCompilation := justInTimeCompilation value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5516
            justInTimeCompilation ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5517
                Method allInstancesDo:[:m | m checked:false].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5518
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5519
            ObjectMemory justInTimeCompilation:justInTimeCompilation.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5520
            ObjectMemory fullSingleStepSupport:fullDebugSupport value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5521
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5522
        Autoload compileLazy:compileLazy value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5523
        Smalltalk loadBinaries:loadBinaries value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5524
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5525
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5526
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5527
    "Modified: / 10.9.1995 / 19:19:18 / claus"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5528
    "Modified: / 9.9.1996 / 22:42:47 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5529
    "Modified: / 5.11.1998 / 14:25:59 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5530
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5531
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5532
displaySettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5533
    "open a dialog on display related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5534
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5535
    |box listOfSizes sizeInfos
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5536
     sizes sizeNames sizeList sizeX sizeY deepIcons
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5537
     isColorMonitor useFixPalette useFixGrayPalette idx ditherStyles ditherSyms ditherList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5538
     y component screen visual clipEncodings clipEncodingSyms clipEncodingList resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5539
     |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5540
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5541
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5542
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5543
    listOfSizes := resources at:'LIST_OF_OFFERED_SCREEN_SIZES' default:#default.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5544
    listOfSizes == #default ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5545
        "/ nothing in resource file; offer at least some.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5546
        sizeInfos := #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5547
                           ( '11.3'' (235mm x 175mm) LCD'   (235 175)    )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5548
                           ( '17''   (325mm x 245mm)'       (325 245)    )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5549
                           ( '19''   (340mm x 270mm)'       (340 270)    )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5550
                           ( '20''   (350mm x 280mm)'       (350 280)    )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5551
                           ( '21''   (365mm x 285mm)'       (365 285)    )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5552
                       ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5553
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5554
        sizeInfos := resources array:listOfSizes.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5555
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5556
    sizeNames := sizeInfos collect:[:entry | entry at:1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5557
    sizes := sizeInfos collect:[:entry | entry at:2].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5558
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5559
    screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5560
    visual := screen visualType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5561
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5562
    isColorMonitor := screen hasColors asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5563
    deepIcons := screen supportsDeepIcons asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5564
    useFixPalette := screen fixColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5565
    useFixGrayPalette := screen fixGrayColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5566
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5567
    sizeList := SelectionInList with:sizeNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5568
    sizeX := screen widthInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5569
    sizeY := screen heightInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5570
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5571
    clipEncodingSyms := #(nil #iso8859 #jis #jis7 #sjis #euc #big5).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5572
    clipEncodings := resources array:#('untranslated' 'iso8859' 'jis' 'jis7' 'shift-JIS' 'EUC' 'big5').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5573
    clipEncodingList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5574
    clipEncodingList list:clipEncodings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5575
    clipEncodingList selectionIndex:(clipEncodingSyms indexOf:screen clipBoardEncoding ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5576
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5577
    ditherList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5578
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5579
    (visual == #StaticGray or:[visual == #GrayScale]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5580
        ditherStyles := #('threshold' 'ordered dither' 'error diffusion').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5581
        ditherSyms := #(threshold ordered floydSteinberg).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5582
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5583
        visual ~~ #TrueColor ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5584
            ditherStyles := #('nearest color' 'error diffusion').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5585
            ditherSyms := #(ordered floydSteinberg).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5586
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5587
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5588
    ditherSyms notNil ifTrue:[    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5589
        ditherList list:ditherStyles.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5590
        ditherList selectionIndex:(ditherSyms indexOf:(Image ditherAlgorithm) ifAbsent:#threshold).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5591
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5592
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5593
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5594
    box label:(resources string:'Display Screen Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5595
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5596
    (box addTextLabel:(resources string:'Actual Visible Screen Area:'))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5597
        adjust:#left.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5598
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5599
    (box addPopUpList:(resources string:'Common Sizes:') on:sizeList)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5600
        label:'monitor size'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5601
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5602
    idx := sizes findFirst:[:entry |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5603
                                ((entry at:1) = sizeX value)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5604
                                and:[((entry at:2) = sizeY value)]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5605
                           ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5606
    idx ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5607
        sizeList selectionIndex:idx
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5608
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5609
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5610
    sizeList onChangeEvaluate:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5611
                                        |idx|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5612
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5613
                                        idx := sizeList selectionIndex.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5614
                                        sizeX value:((sizes at:idx) at:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5615
                                        sizeY value:((sizes at:idx) at:2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5616
                                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5617
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5618
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5619
    component := box addTextLabel:(resources string:'Screen Size:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5620
    component width:0.3; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5621
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5622
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5623
    component := box addInputFieldOn:nil tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5624
    component width:0.25; left:0.3; 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5625
              immediateAccept:false; acceptOnLeave:false; 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5626
              cursorMovementWhenUpdating:#beginOfLine;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5627
              converter:(PrintConverter new initForInteger);
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5628
              model:sizeX.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5629
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5630
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5631
    component := box addTextLabel:(' x ').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5632
    component width:0.1; left:0.55; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5633
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5634
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5635
    component := box addInputFieldOn:nil tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5636
    component width:0.25; left:0.65; 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5637
              immediateAccept:false; acceptOnLeave:false; 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5638
              cursorMovementWhenUpdating:#beginOfLine;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5639
              converter:(PrintConverter new initForInteger);
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5640
              model:sizeY.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5641
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5642
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5643
    component := box addTextLabel:('(mm)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5644
    component width:0.1; left:0.9; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5645
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5646
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5647
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5648
    (box addTextLabel:(resources string:'Screen: Depth: %1 Visual: %2  (%3)'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5649
                                 with:screen depth printString
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5650
                                 with:screen visualType
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5651
                                 with:screen serverVendor))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5652
        adjust:#left.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5653
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5654
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5655
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5656
    box addCheckBox:(resources string:'Color Monitor') on:isColorMonitor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5657
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5658
    visual == #PseudoColor ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5659
        box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5660
        component := box addCheckBox:(resources string:'Use Fix Color Palette %1' with:'(4x8x4)') on:useFixPalette.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5661
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5662
        box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5663
        component := box addCheckBox:(resources string:'Use Fix Gray Color Palette %1' with:'(32)') on:useFixGrayPalette.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5664
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5665
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5666
    ditherSyms notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5667
        box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5668
        component := box addPopUpList:(resources string:'Image Display:') on:ditherList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5669
        component defaultLabel:'image display'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5670
        component superView horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5671
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5672
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5673
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5674
    box addCheckBox:(resources string:'Allow Colored/Grayscale Icons') on:deepIcons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5675
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5676
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5677
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5678
    component := box addPopUpList:(resources string:'ClipBoard Encoding:') on:clipEncodingList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5679
    component superView horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5680
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5681
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5682
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5683
        addHelpButtonFor:'Launcher/screenSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5684
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5685
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5686
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5687
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5688
        Image flushDeviceImages.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5689
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5690
        screen visualType == #PseudoColor ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5691
            useFixPalette value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5692
                Color colorAllocationFailSignal handle:[:ex |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5693
                    self warn:'Could not allocate colors.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5694
                ] do:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5695
                    Color getColorsRed:4 green:8 blue:4 on:screen
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5696
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5697
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5698
                screen releaseFixColors
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5699
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5700
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5701
            useFixGrayPalette value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5702
                Color colorAllocationFailSignal handle:[:ex |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5703
                    self warn:'Could not allocate colors.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5704
                ] do:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5705
                    Color getGrayColors:32 on:screen
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5706
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5707
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5708
                screen releaseFixGrayColors
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5709
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5710
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5711
        screen hasColors:isColorMonitor value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5712
        screen widthInMillimeter:sizeX value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5713
        screen heightInMillimeter:sizeY value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5714
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5715
        screen supportsDeepIcons:deepIcons value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5716
        ditherSyms notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5717
            Image ditherAlgorithm:(ditherSyms at:ditherList selectionIndex).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5718
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5719
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5720
        WindowGroup activeGroup withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5721
            View defaultStyle:(View defaultStyle).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5722
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5723
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5724
        screen clipBoardEncoding:(clipEncodingSyms at:clipEncodingList selectionIndex).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5725
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5726
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5727
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5728
    "Modified: / 9.9.1996 / 22:43:04 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5729
    "Modified: / 20.5.1999 / 18:35:21 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5730
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5731
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5732
editSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5733
    "open a dialog on edit settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5734
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5735
    |box st80EditingMode st80DoubleClickSelectMode resources 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5736
     tabsIs4 prevTabsIs4 searchDialogIsModal startTextDragWithControl|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5737
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5738
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5739
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5740
    "/ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5741
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5742
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5743
    st80EditingMode := UserPreferences current st80EditMode asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5744
    st80DoubleClickSelectMode := TextView st80SelectMode asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5745
    prevTabsIs4 := (ListView userDefaultTabPositions = ListView tab4Positions).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5746
    tabsIs4 := prevTabsIs4 asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5747
    searchDialogIsModal := UserPreferences current searchDialogIsModal asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5748
    startTextDragWithControl := UserPreferences current startTextDragWithControl asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5749
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5750
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5751
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5752
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5753
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5754
    box label:(resources string:'Edit settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5755
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5756
    box addCheckBox:(resources string:'Cursor has ST80 Line-end Behavior') on:st80EditingMode.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5757
    box addCheckBox:(resources string:'Double Click Select Behavior as in ST80') on:st80DoubleClickSelectMode.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5758
    box addCheckBox:(resources string:'Tab Stops in Multiples of 4') on:tabsIs4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5759
    box addCheckBox:(resources string:'SearchBox is Modal') on:searchDialogIsModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5760
    box addCheckBox:(resources string:'CTRL-Key to Start TextDrag') on:startTextDragWithControl.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5761
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5762
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5763
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5764
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5765
        addHelpButtonFor:'Launcher/editSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5766
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5767
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5768
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5769
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5770
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5771
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5772
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5773
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5774
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5775
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5776
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5777
        UserPreferences current st80EditMode:(st80EditingMode value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5778
        TextView st80SelectMode:(st80DoubleClickSelectMode value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5779
        tabsIs4 value ~~ prevTabsIs4 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5780
            ListView userDefaultTabPositions:(tabsIs4 value ifTrue:[ListView tab4Positions] ifFalse:[ListView tab8Positions]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5781
            ListView allSubInstancesDo:[:eachKindOfListView |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5782
                tabsIs4 value ifTrue:[eachKindOfListView setTab4] ifFalse:[eachKindOfListView setTab8]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5783
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5784
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5785
        UserPreferences current searchDialogIsModal:searchDialogIsModal value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5786
        UserPreferences current startTextDragWithControl:startTextDragWithControl value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5787
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5788
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5789
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5790
    "Created: / 6.1.1999 / 14:12:09 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5791
    "Modified: / 6.1.1999 / 14:17:51 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5792
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5793
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5794
fontSettingsFor:requestor
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5795
    "open a dialog on font related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5796
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5797
    (self fontBoxForEncoding:nil) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5798
        requestor reopenLauncher.
3741
a9d08a1b0d7d Fix save settings dialog when called with Filename arg
Stefan Vogel <sv@exept.de>
parents: 3738
diff changeset
  5799
    ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5800
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5801
    "Created: 26.2.1996 / 22:52:51 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5802
    "Modified: 8.1.1997 / 14:52:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5803
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5804
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5805
javaSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5806
    "open a dialog on settings related to the java subsystem"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5807
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5808
    |box audio javaHome classPath oldJavaHome oldClassPath resources component
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5809
     extraFileSecurityChecks extraSocketSecurityChecks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5810
     supportsJustInTimeCompilation 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5811
     javaJustInTimeCompilation javaNativeCodeOptimization
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5812
     showJavaByteCode exceptionDebug nullPointerExceptionDebug pathSep|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5813
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5814
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5815
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5816
    audio := JavaVM audioEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5817
    extraFileSecurityChecks := JavaVM fileOpenConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5818
    extraSocketSecurityChecks := JavaVM socketConnectConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5819
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5820
        javaJustInTimeCompilation := ObjectMemory javaJustInTimeCompilation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5821
        javaNativeCodeOptimization := ObjectMemory javaNativeCodeOptimization asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5822
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5823
        javaJustInTimeCompilation := javaNativeCodeOptimization := false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5824
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5825
    showJavaByteCode := JavaMethod forceByteCodeDisplay asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5826
    exceptionDebug := JavaVM exceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5827
    nullPointerExceptionDebug := JavaVM nullPointerExceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5828
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5829
    classPath := (Java classPath ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5830
    OperatingSystem isUNIXlike ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5831
        pathSep := $;.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5832
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5833
        pathSep := $:.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5834
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5835
    classPath := (classPath asStringWith:pathSep) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5836
    oldClassPath := classPath copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5837
    classPath := classPath asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5838
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5839
    javaHome := (Java javaHome ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5840
    oldJavaHome := javaHome copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5841
    javaHome := javaHome asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5842
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5843
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5844
    box label:(resources string:'Java').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5845
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5846
    box addCheckBox:(resources string:'Audio Enabled') on:audio.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5847
    box addCheckBox:(resources string:'Confirm file open for write') on:extraFileSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5848
    box addCheckBox:(resources string:'Confirm socket connect') on:extraSocketSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5849
    box addCheckBox:(resources string:'Debug Exceptions') on:exceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5850
    box addCheckBox:(resources string:'Debug Null Pointer Exceptions') on:nullPointerExceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5851
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5852
    supportsJustInTimeCompilation ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5853
        box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5854
            addCheckBox:(resources string:'java just in time compilation to machine code') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5855
            on:javaJustInTimeCompilation.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5856
        box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5857
            addCheckBox:(resources string:'optimize native code') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5858
            on:javaNativeCodeOptimization.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5859
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5860
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5861
    box addCheckBox:(resources string:'Display java byteCode (i.e. not source)') on:showJavaByteCode.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5862
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5863
    component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5864
                    addLabelledInputField:(resources string:'classPath:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5865
                    adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5866
                    on:classPath 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5867
                    tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5868
                    separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5869
    component acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5870
    component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5871
                    addLabelledInputField:(resources string:'java home:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5872
                    adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5873
                    on:javaHome 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5874
                    tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5875
                    separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5876
    component acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5877
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5878
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5879
    box addComponent:(Button 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5880
                        label:(resources string:'Reinit VM now') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5881
                        action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5882
                                box windowGroup withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5883
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5884
"/                                        Java initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5885
"/                                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5886
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5887
"/                                        self warn:'No JDK found'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5888
"/                                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5889
                                        JavaVM initializeVM
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5890
"/                                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5891
                                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5892
                               ]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5893
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5894
    box addComponent:(Button 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5895
                        label:(resources string:'Remove all Java classes now') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5896
                        action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5897
                                box windowGroup withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5898
                                    Java flushAllJavaResources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5899
                                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5900
                               ]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5901
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5902
    "/ box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5903
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5904
"/    box addHelpButtonFor:'Launcher/javaSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5905
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5906
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5907
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5908
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5909
        classPath value ~= oldClassPath ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5910
            OperatingSystem isUNIXlike ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5911
                classPath := (classPath value asCollectionOfSubstringsSeparatedBy:$:)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5912
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5913
                classPath := (classPath value asCollectionOfSubstringsSeparatedBy:$;)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5914
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5915
            Java classPath:classPath
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5916
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5917
        Java javaHome:javaHome value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5918
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5919
        JavaMethod forceByteCodeDisplay:showJavaByteCode value. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5920
        JavaVM audioEnabled:audio value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5921
        JavaVM exceptionDebug:exceptionDebug value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5922
        JavaVM nullPointerExceptionDebug:nullPointerExceptionDebug value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5923
        JavaVM fileOpenConfirmation: extraFileSecurityChecks value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5924
        JavaVM socketConnectConfirmation: extraSocketSecurityChecks value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5925
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5926
        javaJustInTimeCompilation value ~~ ObjectMemory javaJustInTimeCompilation ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5927
            ObjectMemory javaJustInTimeCompilation:javaJustInTimeCompilation value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5928
            javaJustInTimeCompilation value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5929
                JavaMethod allSubInstancesDo:[:m | m checked:false].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5930
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5931
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5932
        javaNativeCodeOptimization value ~~ ObjectMemory javaNativeCodeOptimization ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5933
            ObjectMemory javaNativeCodeOptimization:javaNativeCodeOptimization value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5934
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5935
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5936
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5937
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5938
    "Created: / 18.7.1998 / 22:32:58 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5939
    "Modified: / 27.1.1999 / 20:16:03 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5940
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5941
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5942
keyboardSettings 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5943
    "open a dialog on keyboard related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5944
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5945
    |mappings listOfRawKeys listOfFunctions
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5946
     box l
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5947
     list1 list2 listView1 listView2 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5948
     frame selectionForwarder macroForwarder macroTextView y resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5949
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5950
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5951
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5952
    mappings := Screen current keyboardMap.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5953
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5954
    listOfRawKeys := (mappings keys asArray collect:[:key | key asString]) sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5955
    listOfFunctions := (mappings values asSet asArray collect:[:key | key asString]) sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5956
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5957
    selectionForwarder := Plug new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5958
    selectionForwarder respondTo:#showFunction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5959
                  with:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5960
                        |raw|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5961
                        raw := list1 selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5962
                        list2 retractInterestsFor:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5963
                        list2 selection:(mappings at:raw asSymbol) asString.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5964
                        list2 onChangeSend:#showRawKey to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5965
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5966
    selectionForwarder respondTo:#showRawKey
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5967
                  with:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5968
                        |f raw|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5969
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5970
                        f := list2 selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5971
                        list1 retractInterestsFor:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5972
                        raw := mappings keyAtValue:f asString.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5973
                        raw isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5974
                            raw := mappings keyAtValue:f first.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5975
                            raw isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5976
                                raw := mappings keyAtValue:f asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5977
                            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5978
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5979
                        list1 selection:raw.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5980
                        list1 onChangeSend:#showFunction to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5981
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5982
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5983
    macroForwarder := [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5984
                        |f macro indent|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5985
                        f := list2 selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5986
                        (f startsWith:'Cmd') ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5987
                            f := f copyFrom:4
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5988
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5989
                        macro := UserPreferences current functionKeySequences 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5990
                                    at:(f asSymbol) ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5991
                        macro notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5992
                            macro := macro asStringCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5993
                            indent := macro
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5994
                                         inject:99999 into:[:min :element |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5995
                                             |stripped|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5996
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5997
                                             stripped := element withoutLeadingSeparators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5998
                                             stripped size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5999
                                                 min
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6000
                                             ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6001
                                                 min min:(element size - stripped size)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6002
                                             ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6003
                                         ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6004
                            indent ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6005
                                macro := macro collect:[:line | 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6006
                                             line size > indent ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6007
                                                line copyFrom:indent+1
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6008
                                             ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6009
                                                line
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6010
                                             ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6011
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6012
                            ].                        
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6013
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6014
                        macroTextView contents:macro.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6015
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6016
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6017
    list1 := SelectionInList with:listOfRawKeys.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6018
    list1 onChangeSend:#showFunction to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6019
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6020
    list2 := SelectionInList with:listOfFunctions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6021
    list2 onChangeSend:#showRawKey to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6022
    list2 onChangeEvaluate:macroForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6023
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6024
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6025
    box label:(resources string:'Keyboard Mappings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6026
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6027
    l := box addTextLabel:(resources at:'KEY_MSG' default:'keyboard mapping:') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6028
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6029
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6030
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6031
    frame extent:300 @ 300.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6032
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6033
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6034
    listView1 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6035
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6036
    listView1 origin:0.0@0.0 corner:0.5@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6037
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6038
    listView2 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6039
    listView2 model:list2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6040
    listView2 origin:0.5@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6041
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6042
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6043
    box addComponent:frame withExtent:350@200.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6044
    box makeTabable:listView1. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6045
    box makeTabable:listView2. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6046
    frame origin:0.0@0.0 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6047
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6048
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6049
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6050
    l := box addTextLabel:(resources string:'Macro text (if any):') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6051
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6052
    l origin:0.0@0.6 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6053
    l topInset:(View viewSpacing).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6054
    l bottomInset:(l preferredExtent y negated - View viewSpacing).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6055
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6056
    macroTextView := HVScrollableView for:TextView miniScroller:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6057
    box addComponent:macroTextView tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6058
    macroTextView origin:0.0@0.6 corner:1.0@1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6059
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6060
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6061
    box
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6062
        addHelpButtonFor:'Launcher/keyboardSetting.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6063
        "addAbortButton;" 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6064
        addOkButtonLabelled:(resources string:'Close' "'Dismiss'").
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6065
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6066
    macroTextView topInset:(l preferredExtent y + 5).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6067
    macroTextView bottomInset:(box preferredExtent y - y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6068
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6069
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6070
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6071
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6072
        "no action yet ..."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6073
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6074
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6075
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6076
    "Modified: / 9.9.1996 / 22:43:17 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6077
    "Modified: / 4.5.1998 / 12:40:02 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6078
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6079
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6080
languageSettings 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6081
    self languageSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6082
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6083
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6084
languageSettingsFor:requestor 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6085
    "open a dialog on language related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6086
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6087
    |listOfLanguages translatedLanguages switch box languageList flags resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6088
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6089
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6090
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6091
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6092
     get list of supported languages from the launchers resources ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6093
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6094
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6095
    listOfLanguages := resources at:'LIST_OF_OFFERED_LANGUAGES' default:#('default').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6096
    listOfLanguages := listOfLanguages asOrderedCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6097
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6098
    translatedLanguages := listOfLanguages collect:[:lang | |item|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6099
                                        item := resources at:lang.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6100
                                        item isString ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6101
                                            item
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6102
                                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6103
                                            item at:1
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6104
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6105
                                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6106
    flags := listOfLanguages collect:[:lang | |item|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6107
                                        item := resources at:lang.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6108
                                        item isArray ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6109
                                            item at:2
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6110
                                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6111
                                            nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6112
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6113
                                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6114
    flags := flags collect:[:nm | |img d| nm notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6115
                                            img := Image fromFile:nm.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6116
                                            img isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6117
                                                d := Smalltalk getPackageDirectoryForPackage:'stx:goodies'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6118
                                                img := Image fromFile:(d construct:nm).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6119
                                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6120
                                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6121
                                            nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6122
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6123
                           ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6124
    listOfLanguages := listOfLanguages collect:[:nm | nm copyFrom:'LANG_' size + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6125
    languageList := translatedLanguages with:flags collect:[:lang :flag | LabelAndIcon icon:flag string:lang.].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6126
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6127
    box := ListSelectionBox title:(resources at:'LANG_MSG' default:'Select a Language') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6128
    box label:(resources string:'Language Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6129
    box list:languageList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6130
    box initialText:(Language , '-' , LanguageTerritory).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6131
    box action:[:newLanguage |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6132
        WindowGroup activeGroup withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6133
            |fontPref idx language oldLanguage territory enc 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6134
             answer matchingFonts l screen|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6135
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6136
            idx := translatedLanguages indexOf:newLanguage withoutSeparators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6137
            idx ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6138
                language := listOfLanguages at:idx
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6139
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6140
                language := newLanguage
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6141
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6142
            (language includes:$-) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6143
                l := language asCollectionOfSubstringsSeparatedBy:$-.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6144
                language := l at:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6145
                territory := l at:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6146
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6147
            territory isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6148
                territory := language copyTo:2
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6149
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6150
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6151
            "/ check if the new language needs a differently encoded font;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6152
            "/ ask user to switch font and allow cancellation.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6153
            "/ Otherwise, you are left with unreadable menu & button items ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6154
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6155
            oldLanguage := Smalltalk language.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6156
            Smalltalk language:language asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6157
            ResourcePack flushCachedResourcePacks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6158
            "/ refetch resources ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6159
            resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6160
            fontPref := resources at:'PREFERRED_FONT_ENCODING' default:'iso8859*'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6161
            fontPref := fontPref asLowercase.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6162
            Smalltalk language:oldLanguage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6163
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6164
            switch := true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6165
            enc := MenuView defaultFont encoding.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6166
            (fontPref match:enc asLowercase) ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6167
                "/ look if there is one at all.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6168
                screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6169
                matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6170
                matchingFonts size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6171
                    "/ flush and try again - just in case, the font path has changed.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6172
                    screen flushListOfAvailableFonts.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6173
                    matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6174
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6175
                matchingFonts size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6176
                    (Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6177
                        confirm:(resources 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6178
                                    string:'Your display does not offer any %1-encoded font.\\Change the language anyway ?\ (texts will probably be unreadable then)'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6179
                                      with:fontPref) withCRs)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6180
                    ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6181
                        switch := false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6182
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6183
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6184
                    answer := Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6185
                                confirmWithCancel:(resources 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6186
                                                        string:'menu font is not %1-encoded.\\Change it ?'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6187
                                                        with:fontPref) withCRs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6188
                                           labels:(resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6189
                                                        array:#('cancel' 'no' 'yes'))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6190
                                           default:3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6191
                    answer isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6192
                        switch := false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6193
                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6194
                        answer ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6195
                            switch := (requestor fontBoxForEncoding:fontPref)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6196
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6197
                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6198
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6199
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6200
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6201
            switch ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6202
                Transcript showCR:'change language to ' , newLanguage , ' ...'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6203
                Smalltalk language:language asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6204
                Smalltalk languageTerritory:territory asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6205
                "/ ResourcePack flushCachedResourcePacks - already done by language-change
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6206
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6207
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6208
        switch ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6209
            requestor reopenLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6210
            DebugView newDebugger.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6211
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6212
    ].    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6213
    box
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6214
        addHelpButtonFor:'Launcher/languageSetting.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6215
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6216
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6217
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6218
    "Modified: / 9.9.1996 / 22:43:27 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6219
    "Modified: / 16.11.2001 / 11:51:35 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6220
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6221
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6222
memorySettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6223
    "open a dialog on objectMemory related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6224
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6225
    |box igcLimit igcFreeLimit igcFreeAmount newSpaceSize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6226
     compressLimit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6227
     oldIncr component fields codeLimit codeTrigger stackLimit resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6228
     fastMoreLimit maxOldSpace models info acceptChannel|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6229
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6230
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6231
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6232
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6233
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6234
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6235
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6236
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6237
    igcLimit := ObjectMemory incrementalGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6238
    igcFreeLimit := ObjectMemory freeSpaceGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6239
    igcFreeAmount := ObjectMemory freeSpaceGCAmount asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6240
    newSpaceSize := ObjectMemory newSpaceSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6241
    oldIncr := ObjectMemory oldSpaceIncrement asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6242
    compressLimit := ObjectMemory oldSpaceCompressLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6243
    codeLimit := ObjectMemory dynamicCodeLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6244
    codeTrigger := ObjectMemory dynamicCodeGCTrigger asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6245
    stackLimit := Process defaultMaximumStackSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6246
    fastMoreLimit := (ObjectMemory fastMoreOldSpaceLimit:-1) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6247
    maxOldSpace := ObjectMemory maxOldSpace asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6248
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6249
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6250
    info := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6251
    models add:newSpaceSize.    info add:#(number      'Size of newSpace where objects are created'                    'Size of NewSpace:' ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6252
    models add:fastMoreLimit.   info add:#(number      'Quickly allocate more memory (suppress GC) up to this limit'   'Quick Allocation Limit:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6253
    models add:maxOldSpace.     info add:#(number      'Never allocate more than this amount of memory'                'Maximum Memory Limit:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6254
    models add:igcLimit.        info add:#(number      'Start IGC whenever this amount has been allocated'             'Incremental GC Allocation Trigger:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6255
    models add:igcFreeLimit.    info add:#(number      'Start IGC whenever freespace drops below this'                 'Incremental GC Freespace Trigger:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6256
    models add:igcFreeAmount.   info add:#(number      'Try to keep this amount for peak requests'                     'Incremental GC Amount:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6257
    models add:oldIncr.         info add:#(number      'Increase oldSpace in chunks of this size'                      'Oldspace Increment:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6258
    models add:compressLimit.   info add:#(number      'Use 2-pass compressing GC if > 0 and more memory is in use'    'Oldspace Compress Limit:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6259
    models add:stackLimit.      info add:#(number      'Trigger recursionInterrupt if more stack is used by a process' 'Stack Limit:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6260
    models add:codeLimit.       info add:#(numberOrNil 'Flush dynamic compiled code to stay within this limit'         'Dynamic code Limit:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6261
    models add:codeTrigger.     info add:#(numberOrNil 'Start incremental GC whenever this amount of code has been allocated' 'Dynamic Code GC Trigger:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6262
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6263
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6264
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6265
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6266
    fields := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6267
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6268
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6269
    box label:(resources string:'Memory Manager Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6270
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6271
    (box addTextLabel:'Warning - invalid settings may result in failures or poor performance
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6272
' , 'You have been warned' allBold , '.') adjust:#left.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6273
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6274
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6275
    models with:info do:[:m :i |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6276
        |lbl descr conv|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6277
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6278
        conv := i at:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6279
        lbl := i at:3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6280
        descr := i at:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6281
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6282
        component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6283
                    addLabelledInputField:(resources string:lbl)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6284
                    adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6285
                    on:nil "/ newSpaceSize 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6286
                    tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6287
                    separateAtX:0.7.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6288
        component acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6289
"/        component converter:(PrintConverter new perform:conv).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6290
        component model:((TypeConverter on:m) perform:conv).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6291
        component acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6292
        fields add:component.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6293
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6294
        (box addTextLabel:descr) adjust:#left.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6295
        box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6296
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6297
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6298
    ObjectMemory supportsJustInTimeCompilation ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6299
        (fields at:9) disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6300
        (fields at:10) disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6301
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6302
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6303
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6304
    box
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6305
        addHelpButtonFor:'Launcher/memorySettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6306
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6307
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6308
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6309
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6310
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6311
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6312
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6313
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6314
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6315
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6316
        acceptChannel value:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6317
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6318
        igcFreeAmount value ~~ ObjectMemory freeSpaceGCAmount ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6319
            ObjectMemory freeSpaceGCAmount:igcFreeAmount value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6320
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6321
        igcFreeLimit value ~~ ObjectMemory freeSpaceGCLimit ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6322
            ObjectMemory freeSpaceGCLimit:igcFreeLimit value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6323
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6324
        igcLimit value ~~ ObjectMemory incrementalGCLimit ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6325
            ObjectMemory incrementalGCLimit:igcLimit value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6326
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6327
        newSpaceSize value ~~ ObjectMemory newSpaceSize ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6328
            ObjectMemory newSpaceSize:newSpaceSize value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6329
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6330
        oldIncr value ~~ ObjectMemory oldSpaceIncrement ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6331
            ObjectMemory oldSpaceIncrement:oldIncr value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6332
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6333
        stackLimit value ~~ Process defaultMaximumStackSize ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6334
            Process defaultMaximumStackSize:stackLimit value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6335
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6336
        fastMoreLimit value ~~ (ObjectMemory fastMoreOldSpaceLimit:-1) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6337
            ObjectMemory fastMoreOldSpaceLimit:fastMoreLimit value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6338
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6339
        maxOldSpace value ~~ ObjectMemory maxOldSpace ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6340
            ObjectMemory maxOldSpace:maxOldSpace value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6341
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6342
        ObjectMemory oldSpaceCompressLimit:compressLimit value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6343
        ObjectMemory dynamicCodeLimit:codeLimit value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6344
        ObjectMemory dynamicCodeGCTrigger:codeTrigger value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6345
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6346
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6347
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6348
    "Modified: 27.2.1997 / 16:50:12 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6349
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6350
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6351
messageSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6352
    "open a dialog on infoMessage related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6353
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6354
    |box vmInfo vmErrors displayErrors classInfos resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6355
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6356
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6357
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6358
    vmInfo := ObjectMemory infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6359
    vmErrors := ObjectMemory debugPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6360
    classInfos := Object infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6361
    displayErrors := DeviceWorkstation errorPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6362
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6363
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6364
    box label:(resources string:'Messages').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6365
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6366
    box addCheckBox:(resources string:'VM Info Messages') on:vmInfo.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6367
    box addCheckBox:(resources string:'VM Error Messages') on:vmErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6368
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6369
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6370
    box addCheckBox:(resources string:'Display Error Messages (Xlib, Xtlib, WinAPI ...)') on:displayErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6371
    box addCheckBox:(resources string:'Other Info Messages') on:classInfos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6372
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6373
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6374
    box addHelpButtonFor:'Launcher/messageSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6375
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6376
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6377
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6378
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6379
        ObjectMemory infoPrinting:vmInfo value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6380
        ObjectMemory debugPrinting:vmErrors value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6381
        Object infoPrinting:classInfos value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6382
        DeviceWorkstation errorPrinting:displayErrors value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6383
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6384
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6385
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6386
    "Modified: 27.1.1997 / 17:46:01 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6387
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6388
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6389
miscSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6390
    "open a dialog on misc other settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6391
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6392
    |box pos pos2 check butt shadows takeFocus focusFollowsMouse returnFocus  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6393
     hostNameInLabel showAccelerators 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6394
     preemptive dynamicPrios hostNameInLabelHolder resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6395
     activateOnClick opaqueVariablePanelResize opaqueTableColumnResize currentUserPrefs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6396
     beepEnabled newWindowLabelFormat|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6397
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6398
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6399
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6400
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6401
    "/ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6402
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6403
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6404
    shadows := PopUpView shadows asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6405
    beepEnabled := currentUserPrefs beepEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6406
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6407
    hostNameInLabel := StandardSystemView includeHostNameInLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6408
    hostNameInLabelHolder := hostNameInLabel asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6409
    returnFocus := StandardSystemView returnFocusWhenClosingModalBoxes asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6410
    takeFocus := StandardSystemView takeFocusWhenMapped asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6411
    focusFollowsMouse := (currentUserPrefs focusFollowsMouse ? true) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6412
    activateOnClick := (Display activateOnClick:nil) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6413
    opaqueVariablePanelResize := currentUserPrefs opaqueVariablePanelResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6414
    opaqueTableColumnResize := currentUserPrefs opaqueTableColumnResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6415
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6416
    showAccelerators := MenuView showAcceleratorKeys asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6417
    preemptive := Processor isTimeSlicing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6418
    dynamicPrios := Processor supportDynamicPriorities asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6419
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6420
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6421
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6422
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6423
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6424
    box label:(resources string:'Other settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6425
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6426
    box addCheckBox:(resources string:'Shadows under PopUp Views') on:shadows.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6427
    box addCheckBox:(resources string:'Beeper enabled') on:beepEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6428
    box addCheckBox:(resources string:'Boxes Return Focus to Previously Active View') on:returnFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6429
    box addCheckBox:(resources string:'Views Catch Focus when Mapped') on:takeFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6430
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6431
    check := box addCheckBox:(resources string:'Hostname in Window Labels') on:hostNameInLabelHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6432
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6433
    pos2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6434
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6435
    butt := box addComponent:(Button label:(resources string:'Format...') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6436
               action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6437
                       |newFormat|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6438
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6439
                       newFormat := Dialog request:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6440
                                        'Define the Format of Window Labels:\\  %1 - Label\  %2 - Hostname\  %3 - Username\  %4 - ProcessId\'  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6441
                                           withCRs initialAnswer:StandardSystemView windowLabelFormat.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6442
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6443
                       newFormat size > 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6444
                           newWindowLabelFormat := newFormat
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6445
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6446
                      ]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6447
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6448
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6449
    box yPosition:(box yPosition max:pos2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6450
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6451
    box addCheckBox:(resources string:'Show Accelerator Keys in Menus') on:showAccelerators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6452
    box addCheckBox:(resources string:'Raise & Activate Windows on Click') on:activateOnClick.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6453
    box addCheckBox:(resources string:'Focus Follows Mouse') on:focusFollowsMouse.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6454
    box addCheckBox:(resources string:'Opaque Variable Panel Resizing') on:opaqueVariablePanelResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6455
    box addCheckBox:(resources string:'Opaque Table Column Resizing') on:opaqueTableColumnResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6456
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6457
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6458
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6459
    box addCheckBox:(resources string:'Preemptive Scheduling') on:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6460
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6461
    check := box addCheckBox:(resources string:'Dynamic Priorities') on:dynamicPrios.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6462
    check enableChannel:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6463
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6464
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6465
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6466
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6467
        addHelpButtonFor:'Launcher/miscSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6468
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6469
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6470
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6471
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6472
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6473
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6474
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6475
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6476
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6477
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6478
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6479
        PopUpView shadows:shadows value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6480
        (hostNameInLabelHolder value ~= hostNameInLabel 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6481
        or:[newWindowLabelFormat ~= StandardSystemView windowLabelFormat]) ifTrue:[ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6482
            StandardSystemView includeHostNameInLabel:hostNameInLabelHolder value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6483
            newWindowLabelFormat notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6484
                StandardSystemView windowLabelFormat:newWindowLabelFormat
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6485
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6486
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6487
            Screen allScreens do:[:aDisplay |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6488
                aDisplay allViewsDo:[:aView |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6489
                    |l|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6490
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6491
                    aView isTopView ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6492
                        l := aView label.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6493
                        l notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6494
                            aView label:(l , ' '); label:l.  "/ force a change
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6495
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6496
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6497
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6498
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6499
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6500
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6501
        currentUserPrefs opaqueVariablePanelResizing:opaqueVariablePanelResize value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6502
        currentUserPrefs opaqueTableColumnResizing:opaqueTableColumnResize value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6503
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6504
        currentUserPrefs beepEnabled:beepEnabled value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6505
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6506
        StandardSystemView returnFocusWhenClosingModalBoxes:returnFocus value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6507
        StandardSystemView takeFocusWhenMapped:takeFocus value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6508
        currentUserPrefs focusFollowsMouse:focusFollowsMouse value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6509
        Screen current activateOnClick:(activateOnClick value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6510
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6511
        MenuView showAcceleratorKeys:showAccelerators value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6512
        Processor isTimeSlicing ~~ preemptive value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6513
            preemptive value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6514
                Processor startTimeSlicing
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6515
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6516
                Processor stopTimeSlicing
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6517
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6518
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6519
        Processor supportDynamicPriorities ~~ dynamicPrios value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6520
            Processor supportDynamicPriorities:dynamicPrios value
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6521
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6522
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6523
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6524
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6525
    "Modified: / 9.9.1996 / 22:43:36 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6526
    "Modified: / 20.5.1999 / 18:33:55 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6527
    "Modified: / 3.12.1999 / 17:11:38 / ps"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6528
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6529
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6530
printerSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6531
    "open a dialog on printer related settings; returns true if accepted"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6532
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6533
    |box accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6534
     possiblePrinters possibleTypes printerType printCommand 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6535
     pageFormat landscape updater
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6536
     formatLabel formatComponent landscapeLabel landscapeComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6537
     topMargin leftMargin rightMargin bottomMargin unitList unit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6538
     topMarginComponent leftMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6539
     rightMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6540
     bottomMarginComponent supportsColor supportsColorComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6541
     y y1 commandListPop component commandList row resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6542
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6543
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6544
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6545
    possiblePrinters := PrinterStream withAllSubclasses asArray.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6546
    possibleTypes := possiblePrinters collect:[:cls | cls printerTypeName].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6547
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6548
    printerType := SelectionInList new list:(resources array:possibleTypes).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6549
    printerType selectionIndex:(possiblePrinters identityIndexOf:Printer).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6550
    printCommand := Printer printCommand asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6551
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6552
    pageFormat := SelectionInList new list:(Printer defaultPageFormats).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6553
    pageFormat selection:(Printer pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6554
    landscape := Printer landscape asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6555
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6556
    topMargin := Printer topMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6557
    leftMargin := Printer leftMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6558
    rightMargin := Printer rightMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6559
    bottomMargin := Printer bottomMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6560
    supportsColor := Printer supportsColor asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6561
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6562
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6563
    box label:(resources string:'Printer Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6564
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6565
"/ either use a popUpList ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6566
"/    box addPopUpList:(resources string:'printer type:') on:printerType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6567
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6568
"/ or a comboList;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6569
"/ which one looks better ?
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6570
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6571
    component := box addTextLabel:(resources string:'Printer Type:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6572
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6573
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6574
    component := box addComboListOn:printerType tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6575
    component aspect:#selectionIndex; changeMessage:#selectionIndex:; useIndex:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6576
    component width:0.75; left:0.25.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6577
"/ end of question
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6578
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6579
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6580
    component := box addTextLabel:(resources string:'Print Command:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6581
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6582
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6583
    commandListPop := box addComboBoxOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6584
"/    commandListPop := box addInputFieldOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6585
    commandListPop width:0.75; left:0.25; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6586
    "/ some common print commands ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6587
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6588
    commandList := resources at:'PRINT_COMMANDS' ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6589
    commandList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6590
        commandList := PrinterStream defaultCommands.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6591
        commandList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6592
            commandList := #('lpr' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6593
                             'lp' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6594
                            ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6595
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6596
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6597
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6598
    commandListPop list:commandList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6599
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6600
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6601
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6602
    row := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6603
    row add:(formatLabel := Label label:(resources string:'Page Format:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6604
    formatLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6605
    row add:(formatComponent := PopUpList on:pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6606
    formatComponent label:'unknown'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6607
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6608
    row add:(landscapeLabel := Label label:(resources string:'Landscape:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6609
    landscapeLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6610
    row add:(landscapeComponent := CheckToggle on:landscape).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6611
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6612
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6613
    box
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6614
        addRow:(1 to:2)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6615
        fromX:0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6616
        toX:0.5
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6617
        collect:[:idx | row at:idx]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6618
        tabable:false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6619
        horizontalLayout:#leftSpace
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6620
        verticalLayout:#center.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6621
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6622
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6623
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6624
    box
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6625
        addRow:(3 to:4)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6626
        fromX:0.5
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6627
        toX:1.0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6628
        collect:[:idx | row at:idx]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6629
        tabable:false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6630
        horizontalLayout:#leftSpace
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6631
        verticalLayout:#center.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6632
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6633
    box yPosition:(box yPosition max:y1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6634
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6635
    box makeTabable:(formatComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6636
    box makeTabable:(landscapeComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6637
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6638
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6639
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6640
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6641
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6642
    topMarginComponent := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6643
        addLabelledInputField:(resources string:'Top Margin:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6644
        adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6645
        on:nil "/ topMargin 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6646
        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6647
        from:0.0 to:0.5
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6648
        separateAtX:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6649
    topMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6650
    topMarginComponent model:topMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6651
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6652
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6653
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6654
    unitList := SelectionInList with:#('inch' 'mm').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6655
    unitList selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6656
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6657
    component := box addComponent:(PopUpList on:unitList).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6658
    component
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6659
        left:0.6;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6660
        width:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6661
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6662
    box yPosition:y1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6663
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6664
    leftMarginComponent := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6665
        addLabelledInputField:(resources string:'Left Margin:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6666
        adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6667
        on:nil "/ leftMargin 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6668
        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6669
        from:0.0 to:0.5
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6670
        separateAtX:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6671
    leftMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6672
    leftMarginComponent model:leftMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6673
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6674
    rightMarginComponent := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6675
        addLabelledInputField:(resources string:'Right Margin:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6676
        adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6677
        on:nil "/ rightMargin 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6678
        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6679
        from:0.0 to:0.5
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6680
        separateAtX:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6681
    rightMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6682
    rightMarginComponent model:rightMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6683
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6684
    bottomMarginComponent := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6685
        addLabelledInputField:(resources string:'Bottom Margin:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6686
        adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6687
        on:nil "/ bottomMargin 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6688
        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6689
        from:0.0 to:0.5
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6690
        separateAtX:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6691
    bottomMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6692
    bottomMarginComponent model:bottomMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6693
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6694
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6695
    supportsColorComponent := box addCheckBox:(resources string:'Color Printer') on:supportsColor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6696
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6697
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6698
    updater := [ |p fg hasPageSize hasMargins|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6699
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6700
                       printerType selectionIndex ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6701
                           p := possiblePrinters at:(printerType selectionIndex).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6702
                           hasPageSize := p supportsPageSizes. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6703
                           hasMargins := p supportsMargins. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6704
                       ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6705
                           hasPageSize := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6706
                           hasMargins := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6707
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6708
                       hasPageSize ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6709
                          fg := Button new foregroundColor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6710
                          formatComponent enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6711
                          landscapeComponent enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6712
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6713
                          formatComponent label:p pageFormat.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6714
                          pageFormat value:(p pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6715
                          landscape value:(p landscape).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6716
                       ] ifFalse:[ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6717
                          fg := Button new disabledForegroundColor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6718
                          formatComponent disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6719
                          landscapeComponent disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6720
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6721
                          formatComponent label:'unknown'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6722
                          landscape value:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6723
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6724
                       hasMargins ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6725
                          unitList selectionIndex == 2 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6726
                              unit := #mm
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6727
                          ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6728
                              unit := #inch
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6729
                          ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6730
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6731
                          topMargin value:(UnitConverter convert:p topMargin from:#inch to:unit).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6732
                          leftMargin value:(UnitConverter convert:p leftMargin from:#inch to:unit).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6733
                          rightMargin value:(UnitConverter convert:p rightMargin from:#inch to:unit).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6734
                          bottomMargin value:(UnitConverter convert:p bottomMargin from:#inch to:unit).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6735
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6736
                          topMarginComponent enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6737
                          leftMarginComponent enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6738
                          rightMarginComponent enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6739
                          bottomMarginComponent enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6740
                       ] ifFalse:[ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6741
                          topMarginComponent disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6742
                          leftMarginComponent disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6743
                          rightMarginComponent disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6744
                          bottomMarginComponent disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6745
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6746
                       formatLabel foregroundColor:fg.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6747
                       landscapeLabel foregroundColor:fg.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6748
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6749
                       p notNil ifTrue:[ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6750
                           commandList := p defaultCommands.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6751
                           commandList notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6752
                                commandListPop list:commandList 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6753
                           ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6754
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6755
                           printCommand value:(p printCommand).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6756
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6757
                       p supportsPostscript ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6758
                           supportsColorComponent disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6759
                           supportsColor value:false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6760
                       ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6761
                           supportsColorComponent enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6762
                           supportsColor value:(Printer supportsColor).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6763
                       ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6764
                     ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6765
    unitList onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6766
    printerType onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6767
    updater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6768
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6769
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6770
    box addVerticalSpace;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6771
        addHelpButtonFor:'Launcher/printerSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6772
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6773
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6774
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6775
    (accepted := box accepted) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6776
        Printer := possiblePrinters at:(printerType selectionIndex).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6777
        Printer printCommand:printCommand value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6778
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6779
        Printer supportsPageSizes ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6780
            Printer pageFormat:(pageFormat selection).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6781
            Printer landscape:(landscape value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6782
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6783
        Printer supportsMargins ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6784
            unitList selectionIndex == 2 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6785
                unit := #mm
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6786
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6787
                unit := #inch
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6788
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6789
            Printer topMargin:(UnitConverter convert:topMargin value from:unit to:#inch).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6790
            Printer leftMargin:(UnitConverter convert:leftMargin value from:unit to:#inch).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6791
            Printer rightMargin:(UnitConverter convert:rightMargin value from:unit to:#inch).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6792
            Printer bottomMargin:(UnitConverter convert:bottomMargin value from:unit to:#inch).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6793
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6794
        Printer supportsPostscript ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6795
            Printer supportsColor:supportsColor value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6796
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6797
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6798
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6799
    ^ accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6800
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6801
    "Modified: 9.9.1996 / 22:43:51 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6802
    "Modified: 28.2.1997 / 14:00:13 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6803
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6804
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6805
restoreSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6806
    "restore settings from a settings-file."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6807
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6808
    "a temporary kludge - we need a central systemSettings object for this,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6809
     which can be saved/restored with a single store/read.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6810
     Will move entries over to UserPreferences over time;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6811
     new items should always go there."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6812
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6813
    |fileName resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6814
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6815
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6816
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6817
    fileName := Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6818
        requestFileName:(resources string:'restore settings from:') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6819
        default:'settings.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6820
        ok:(resources string:'restore') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6821
        abort:(resources string:'cancel') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6822
        pattern:'*.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6823
        fromDirectory:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6824
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6825
    (fileName size == 0) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6826
        "/ canceled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6827
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6828
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6829
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6830
    self withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6831
        Smalltalk fileIn:fileName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6832
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6833
        self reopenLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6834
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6835
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6836
    "Modified: / 21.7.1998 / 11:37:54 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6837
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6838
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6839
saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6840
    "save settings to a settings-file."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6841
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6842
    "a temporary kludge - we need a central systemSettings object for this,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6843
     which can be saved/restored with a single store/read.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6844
     Will move entries over to UserPreferences over time;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6845
     new items should always go there."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6846
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6847
    |fileName resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6848
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6849
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6850
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6851
    fileName := Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6852
        requestFileName:(resources string:'Save settings in:') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6853
        default:'settings.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6854
        ok:(resources string:'Save') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6855
        abort:(resources string:'Cancel') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6856
        pattern:'*.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6857
        fromDirectory:'.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6858
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6859
    fileName size ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6860
        "not canceled"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6861
        self saveSettingsIn:fileName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6862
    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6863
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6864
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6865
saveSettingsIn:fileName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6866
    "save settings to a settings-file."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6867
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6868
    "a temporary kludge - we need a central systemSettings object for this,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6869
     which can be saved/restored with a single store/read.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6870
     Will move entries over to UserPreferences over time;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6871
     new items should always go there."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6872
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6873
    |resources s screen currentUserPrefs|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6874
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6875
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6876
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6877
    s := fileName asFilename writeStream.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6878
    s isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6879
        self warn:(resources string:'Cannot write the %1 file !!' with:fileName).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6880
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6881
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6882
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6883
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6884
    screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6885
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6886
    s nextPutLine:'"/ ST/X saved settings';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6887
      nextPutLine:'"/ DO NOT MODIFY MANUALLY';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6888
      nextPutLine:'"/ (modifications would be lost with next save-settings)';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6889
      nextPutLine:'"/';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6890
      nextPutLine:'"/ this file was automatically generated by the';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6891
      nextPutLine:'"/ ''save settings'' function of the Launcher';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6892
      nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6893
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6894
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6895
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6896
    s nextPutLine:'"/ saved by ' , OperatingSystem getLoginName , '@' , OperatingSystem getHostName , ' at ' , AbsoluteTime now printString.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6897
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6898
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6899
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6900
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6901
    s nextPutLine:'"/ Display settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6902
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6903
    s nextPutLine:'"/ only restore the display settings, if on the same Display ...'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6904
    s nextPutLine:'Display notNil ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6905
    s nextPutLine:' Display displayName = ' , (screen displayName storeString) , ' ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6906
      screen fixColors notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6907
        s nextPutLine:'  Image flushDeviceImages.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6908
        s nextPutLine:'  Color colorAllocationFailSignal catch:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6909
        s nextPutLine:'    Color getColorsRed:6 green:6 blue:4 on:Display'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6910
        s nextPutLine:'  ].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6911
      ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6912
        s nextPutLine:'  Display releaseFixColors.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6913
      ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6914
      s nextPutLine:'  Display hasColors: ' , (screen hasColors storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6915
      s nextPutLine:'  Display widthInMillimeter: ' , (screen widthInMillimeter storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6916
      s nextPutLine:'  Display heightInMillimeter: ' , (screen heightInMillimeter storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6917
      s nextPutLine:'  Display supportsDeepIcons: ' , (screen supportsDeepIcons storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6918
      s nextPutLine:'  Image ditherAlgorithm: ' , (Image ditherAlgorithm storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6919
      s nextPutLine:'  View defaultStyle:' , View defaultStyle storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6920
    s nextPutLine:' ].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6921
    s nextPutLine:'].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6922
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6923
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6924
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6925
    s nextPutLine:'"/ Compiler settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6926
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6927
    s nextPutLine:'Compiler warnSTXSpecials: ' , (Compiler warnSTXSpecials storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6928
      nextPutLine:'Compiler warnUnderscoreInIdentifier: ' , (Compiler warnUnderscoreInIdentifier storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6929
      nextPutLine:'Compiler warnOldStyleAssignment: ' , (Compiler warnOldStyleAssignment storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6930
      nextPutLine:'Compiler warnCommonMistakes: ' , (Compiler warnCommonMistakes storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6931
      nextPutLine:'Compiler warnPossibleIncompatibilities: ' , (Compiler warnPossibleIncompatibilities storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6932
      nextPutLine:'Compiler allowUnderscoreInIdentifier: ' , (Compiler allowUnderscoreInIdentifier storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6933
      nextPutLine:'Compiler allowSqueakExtensions: ' , (Compiler allowSqueakExtensions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6934
      nextPutLine:'Compiler allowDolphinExtensions: ' , (Compiler allowDolphinExtensions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6935
      nextPutLine:'Compiler arraysAreImmutable: ' , (Compiler arraysAreImmutable storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6936
      nextPutLine:'Compiler lineNumberInfo: ' , (Compiler lineNumberInfo storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6937
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6938
      nextPutLine:'Compiler foldConstants: ' , (Compiler foldConstants storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6939
      nextPutLine:'Compiler stcCompilation: ' , (Compiler stcCompilation storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6940
      nextPutLine:'OperatingSystem getOSType = ' , (OperatingSystem getOSType storeString) , ' ifTrue:[';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6941
      nextPutLine:'  Compiler stcCompilationIncludes: ' , (Compiler stcCompilationIncludes storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6942
      nextPutLine:'  Compiler stcCompilationDefines: ' , (Compiler stcCompilationDefines storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6943
      nextPutLine:'  Compiler stcCompilationOptions: ' , (Compiler stcCompilationOptions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6944
      nextPutLine:'  ' , (Compiler stcModulePath storeString) , ' asFilename exists ifTrue:[';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6945
      nextPutLine:'    Compiler stcModulePath: ' , (Compiler stcModulePath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6946
      nextPutLine:'  ].';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6947
      nextPutLine:'  Compiler stcPath: ' , (Compiler stcPath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6948
      nextPutLine:'  Compiler ccCompilationOptions: ' , (Compiler ccCompilationOptions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6949
      nextPutLine:'  Compiler ccPath: ' , (Compiler ccPath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6950
      nextPutLine:'  ObjectFileLoader linkArgs: ' , (ObjectFileLoader linkArgs storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6951
      nextPutLine:'  ObjectFileLoader linkCommand: ' , (ObjectFileLoader linkCommand storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6952
      nextPutLine:'  ObjectFileLoader libPath: ' , (ObjectFileLoader libPath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6953
      nextPutLine:'  ObjectFileLoader searchedLibraries: ' , (ObjectFileLoader searchedLibraries storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6954
      nextPutLine:'].';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6955
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6956
      nextPutLine:'ObjectMemory justInTimeCompilation: ' , (ObjectMemory justInTimeCompilation storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6957
      nextPutLine:'ObjectMemory fullSingleStepSupport: ' , (ObjectMemory fullSingleStepSupport storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6958
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6959
    HistoryManager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6960
        HistoryManager isActive ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6961
            s nextPutLine:'HistoryManager notNil ifTrue:[HistoryManager activate].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6962
            s nextPutLine:'HistoryManager notNil ifTrue:[HistoryManager fullHistoryUpdate:' , HistoryManager fullHistoryUpdate storeString , '].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6963
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6964
            s nextPutLine:'HistoryManager notNil ifTrue:[HistoryManager deactivate].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6965
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6966
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6967
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6968
    ObjectFileLoader notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6969
        s nextPutLine:'ObjectFileLoader searchedLibraries: ' , (ObjectFileLoader searchedLibraries storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6970
        s nextPutLine:'ObjectFileLoader libPath: ' , (ObjectFileLoader libPath storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6971
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6972
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6973
    s nextPutLine:'Class catchMethodRedefinitions: ' , (Class catchMethodRedefinitions storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6974
    s nextPutLine:'ClassCategoryReader sourceMode: ' , (ClassCategoryReader sourceMode storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6975
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6976
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6977
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6978
    s nextPutLine:'"/ Info & Debug Messages:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6979
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6980
    s nextPutLine:'ObjectMemory infoPrinting: ' , (ObjectMemory infoPrinting storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6981
      nextPutLine:'ObjectMemory debugPrinting: ' , (ObjectMemory debugPrinting storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6982
      nextPutLine:'Object infoPrinting: ' , (Object infoPrinting storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6983
      nextPutLine:'DeviceWorkstation errorPrinting: ' , (DeviceWorkstation errorPrinting storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6984
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6985
    FlyByHelp isActive ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6986
        s nextPutLine:'FlyByHelp start.'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6987
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6988
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6989
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6990
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6991
    s nextPutLine:'"/ Edit settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6992
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6993
    "/ s nextPutLine:'EditTextView st80Mode: ' , (EditTextView st80Mode storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6994
    s nextPutLine:'TextView st80SelectMode: ' , (TextView st80SelectMode storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6995
    s nextPutLine:'UserPreferences current syntaxColoring: ' , (currentUserPrefs syntaxColoring storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6996
    (ListView userDefaultTabPositions = ListView tab4Positions) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6997
        s nextPutLine:'ListView userDefaultTabPositions:(ListView tab4Positions).'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6998
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6999
        s nextPutLine:'ListView userDefaultTabPositions:(ListView tab8Positions).'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7000
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7001
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7002
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7003
    s nextPutLine:'"/ User preference values:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7004
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7005
    currentUserPrefs keysAndValuesDo:[:k :v |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7006
        (UserPreferences includesSelector:(k , ':') asSymbol) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7007
            s nextPutLine:'UserPreferences current ' , k , ':' , v storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7008
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7009
            s nextPutLine:'UserPreferences current at:' , k storeString , ' put:' , v storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7010
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7011
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7012
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7013
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7014
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7015
    s nextPutLine:'"/ Misc settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7016
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7017
    s nextPutLine:'Class keepMethodHistory: ' , (Class methodHistory notNil storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7018
      nextPutLine:'Smalltalk logDoits: ' , (Smalltalk logDoits storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7019
      nextPutLine:'Autoload compileLazy: ' , (Autoload compileLazy storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7020
      nextPutLine:'Smalltalk loadBinaries: ' , (Smalltalk loadBinaries storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7021
      nextPutLine:'StandardSystemView includeHostNameInLabel: ' , (StandardSystemView includeHostNameInLabel storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7022
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7023
      "/ claus - I dont think its a good idea to save those ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7024
      nextPutLine:'"/ Class updateChanges: ' , (Class updatingChanges storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7025
      nextPutLine:'"/ ObjectMemory nameForChanges: ' , (ObjectMemory nameForChanges storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7026
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7027
      nextPutLine:'StandardSystemView returnFocusWhenClosingModalBoxes: ' , (StandardSystemView returnFocusWhenClosingModalBoxes storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7028
      nextPutLine:'StandardSystemView takeFocusWhenMapped: ' , (StandardSystemView takeFocusWhenMapped storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7029
      nextPutLine:'Display notNil ifTrue:[';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7030
      nextPutLine:' Display activateOnClick: ' , ((screen activateOnClick:nil) storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7031
      nextPutLine:'].';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7032
      nextPutLine:'MenuView showAcceleratorKeys: ' , (MenuView showAcceleratorKeys storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7033
      nextPutLine:'Class tryLocalSourceFirst: ' , (Class tryLocalSourceFirst storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7034
    (Exception emergencyHandler == AbstractLauncherApplication notifyingEmergencyHandler) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7035
        s nextPutLine:'Exception emergencyHandler:(AbstractLauncherApplication notifyingEmergencyHandler).'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7036
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7037
    Processor isTimeSlicing ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7038
        s nextPutLine:'Processor startTimeSlicing.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7039
        s nextPutLine:('Processor supportDynamicPriorities:' , (Processor supportDynamicPriorities ? false) storeString , '.').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7040
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7041
        s nextPutLine:'Processor stopTimeSlicing.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7042
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7043
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7044
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7045
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7046
    s nextPutLine:'"/ Printer settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7047
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7048
    s nextPutLine:'Printer := ' , (Printer name) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7049
      nextPutLine:'Printer printCommand: ' , (Printer printCommand storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7050
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7051
    Printer supportsPageSizes ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7052
        s nextPutLine:'Printer pageFormat: ' , (Printer pageFormat storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7053
        s nextPutLine:'Printer landscape: ' , (Printer landscape storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7054
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7055
    Printer supportsMargins ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7056
        s nextPutLine:'Printer topMargin: ' , (Printer topMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7057
        s nextPutLine:'Printer leftMargin: ' , (Printer leftMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7058
        s nextPutLine:'Printer rightMargin: ' , (Printer rightMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7059
        s nextPutLine:'Printer bottomMargin: ' , (Printer bottomMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7060
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7061
    Printer supportsPostscript ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7062
        s nextPutLine:'Printer supportsColor: ' , (Printer supportsColor storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7063
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7064
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7065
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7066
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7067
    s nextPutLine:'"/ Font settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7068
    s nextPutLine:'"/ (only restored, if image is restarted on the same display)'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7069
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7070
    s nextPutLine:'Display notNil ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7071
    s nextPutLine:' Display displayName = ' , (screen displayName storeString) , ' ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7072
    s nextPutLine:'  View defaultFont: ' , (View defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7073
    s nextPutLine:'  Label defaultFont: ' , (Label defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7074
    s nextPutLine:'  Button defaultFont: ' , (Button defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7075
    s nextPutLine:'  Toggle defaultFont: ' , (Toggle defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7076
    s nextPutLine:'  SelectionInListView defaultFont: ' , (SelectionInListView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7077
    s nextPutLine:'  MenuView defaultFont: ' , (MenuView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7078
    s nextPutLine:'  PullDownMenu defaultFont: ' , (PullDownMenu defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7079
    s nextPutLine:'  TextView defaultFont: ' , (TextView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7080
    s nextPutLine:'  EditTextView defaultFont: ' , (EditTextView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7081
    s nextPutLine:'  CodeView defaultFont: ' , (CodeView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7082
    s nextPutLine:' ].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7083
    s nextPutLine:'].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7084
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7085
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7086
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7087
    s nextPutLine:'"/ Language setting:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7088
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7089
    s nextPutLine:'Smalltalk language: ' , (Smalltalk language storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7090
    s nextPutLine:'Smalltalk languageTerritory: ' , (Smalltalk languageTerritory storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7091
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7092
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7093
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7094
    s nextPutLine:'"/ SourceCodeManager settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7095
    s nextPutLine:'"/ (only restored, if image is restarted on the same host)'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7096
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7097
    s nextPutLine:'OperatingSystem getHostName = ' , (OperatingSystem getHostName storeString) , ' ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7098
    s nextPutLine:'  Class tryLocalSourceFirst:' , Class tryLocalSourceFirst storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7099
    (Smalltalk at:#SourceCodeManager) == CVSSourceCodeManager ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7100
    s nextPutLine:'  Smalltalk at:#SourceCodeManager put: CVSSourceCodeManager.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7101
    s nextPutLine:'  AbstractSourceCodeManager cacheDirectoryName:' , AbstractSourceCodeManager cacheDirectoryName storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7102
    s nextPutLine:'  CVSSourceCodeManager cvsBinDirectory:' , CVSSourceCodeManager cvsBinDirectory storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7103
    s nextPutLine:'  CVSSourceCodeManager repositoryNamesPerModule:' , CVSSourceCodeManager repositoryNamesPerModule storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7104
    s nextPutLine:'  CVSSourceCodeManager initializeForRepository:' , CVSSourceCodeManager repositoryName storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7105
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7106
    s nextPutLine:'].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7107
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7108
    s close.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7109
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7110
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7111
     Transcript topView application saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7112
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7113
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7114
    "Modified: / 6.1.1999 / 14:24:16 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7115
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7116
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7117
sourceAndDebuggerSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7118
    "open a dialog on source&debugger other settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7119
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7120
    |box check butt setupButt logDoits updChanges changeFileName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7121
     useManager hasManager cvsIsSetup
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7122
     repository repositoryHolder localSourceFirst 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7123
     sourceCacheDir cacheEntry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7124
     component localCheck oldIndent nm fn manager
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7125
     showErrorNotifier showVerboseStack
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7126
     syntaxColoring fullSelectorCheck autoFormat
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7127
     resources pos currentUserPrefs checkClassesWhenCheckingIn checkClassesBox|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7128
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7129
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7130
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7131
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7132
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7133
    "/ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7134
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7135
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7136
    logDoits := Smalltalk logDoits asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7137
    updChanges := Class updatingChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7138
    changeFileName := ObjectMemory nameForChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7139
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7140
    (AbstractSourceCodeManager notNil 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7141
    and:[AbstractSourceCodeManager isLoaded not]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7142
        AbstractSourceCodeManager autoload.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7143
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7144
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7145
    hasManager := AbstractSourceCodeManager notNil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7146
                  and:[AbstractSourceCodeManager isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7147
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7148
    repositoryHolder := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7149
    hasManager ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7150
        useManager := (manager := Smalltalk at:#SourceCodeManager) notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7151
        localSourceFirst := Class tryLocalSourceFirst asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7152
        manager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7153
            manager forgetDisabledModules.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7154
            repository := manager repositoryName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7155
            repository notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7156
                repositoryHolder := repository asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7157
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7158
                repositoryHolder := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7159
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7160
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7161
        cvsIsSetup := true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7162
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7163
        useManager := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7164
        localSourceFirst := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7165
        cvsIsSetup := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7166
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7167
    cvsIsSetup := cvsIsSetup asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7168
    showErrorNotifier := (Exception emergencyHandler == AbstractLauncherApplication notifyingEmergencyHandler) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7169
    showVerboseStack := (DebugView defaultVerboseBacktrace ? false) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7170
    syntaxColoring := currentUserPrefs syntaxColoring asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7171
    fullSelectorCheck := currentUserPrefs fullSelectorCheck asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7172
    autoFormat := currentUserPrefs autoFormatting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7173
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7174
    sourceCacheDir := nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7175
    checkClassesWhenCheckingIn := (currentUserPrefs at:#checkClassesWhenCheckingIn ifAbsent:true) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7176
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7177
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7178
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7179
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7180
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7181
    box label:(resources string:'Source & Debugger Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7182
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7183
    box addCheckBox:(resources string:'Log compiles in Changefile') on:updChanges.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7184
    box addCheckBox:(resources string:'Log doIts in Changefile') on:logDoits.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7185
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7186
    component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7187
                    addLabelledInputField:(resources string:'Changefile Name:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7188
                    adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7189
                    on:changeFileName 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7190
                    tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7191
                    separateAtX:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7192
    component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7193
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7194
"/    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7195
"/    component := box addTextLabel:(resources string:'change file name:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7196
"/    component width:0.5; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7197
"/    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7198
"/    component := box addInputFieldOn:changeFileName tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7199
"/    component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7200
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7201
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7202
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7203
    hasManager ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7204
        pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7205
        check := box addCheckBox:(resources string:'Sourcecode Management') on:useManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7206
        check enableChannel:cvsIsSetup.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7207
        box makeTabable:check.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7208
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7209
        CVSSourceCodeManager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7210
            check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7211
            box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7212
            setupButt := box addComponent:(Button label:(resources string:'Setup...') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7213
                       action:[|manager|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7214
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7215
                               self cvsConfigurationDialog.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7216
                               manager := (Smalltalk at:#SourceCodeManager).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7217
                               cvsIsSetup value:manager notNil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7218
                               manager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7219
                                    repositoryHolder value: manager repositoryName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7220
                                    sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7221
                               ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7222
                              ]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7223
            setupButt enableChannel:useManager.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7224
            box makeTabable:setupButt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7225
            setupButt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7226
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7227
        oldIndent := box leftIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7228
        box leftIndent:30.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7229
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7230
        box addVerticalSpace:10.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7231
"/        component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7232
"/                        addLabelledInputField:(resources string:'CVS repository:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7233
"/                        adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7234
"/                        on:repositoryHolder 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7235
"/                        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7236
"/                        separateAtX:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7237
"/        component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7238
"/        component enableChannel:useManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7239
"/        component readOnly:true. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7240
"/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7241
        cacheEntry := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7242
                        addLabelledInputField:(resources string:'Source Cache Dir:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7243
                        adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7244
                        on:sourceCacheDir 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7245
                        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7246
                        separateAtX:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7247
        cacheEntry immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7248
        cacheEntry enableChannel:useManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7249
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7250
        pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7251
        butt := Button label:(resources string:'Flush Cache now').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7252
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager flushSourceCache ] ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7253
        box addComponent:butt tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7254
        butt left:0.6; width:0.4; leftInset:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7255
        butt enableChannel:useManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7256
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7257
        butt := Button label:(resources string:'Condense Cache now').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7258
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager condenseSourceCache ] ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7259
        box addComponent:butt tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7260
        butt left:0.6; width:0.4; leftInset:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7261
        butt enableChannel:useManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7262
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7263
        localCheck := box addCheckBox:(resources string:'If Present, Use Local Source (Suppress Checkout)') on:localSourceFirst.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7264
        localCheck enableChannel:useManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7265
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7266
        checkClassesBox := box addCheckBox:(resources string:'Check for halt/error-Sends when Checking in') on:checkClassesWhenCheckingIn.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7267
        checkClassesBox enableChannel:useManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7268
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7269
        box leftIndent:oldIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7270
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7271
        (AbstractSourceCodeManager isNil 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7272
        or:[AbstractSourceCodeManager defaultManager isNil]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7273
            useManager value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7274
            "/ cacheEntry disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7275
            "/ localCheck enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7276
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7277
            sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7278
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7279
        box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7280
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7281
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7282
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7283
    check := box addCheckBox:(resources string:'Syntax Coloring') on:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7284
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7285
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7286
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self syntaxColorConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7287
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7288
    butt enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7289
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7290
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7291
    check := box addCheckBox:(resources string:'Immediate Selector Check') on:fullSelectorCheck.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7292
    check enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7293
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7294
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7295
    check := box addCheckBox:(resources string:'Auto Format') on:autoFormat.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7296
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7297
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7298
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self formattingConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7299
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7300
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7301
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7302
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7303
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7304
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7305
    box addCheckBox:(resources string:'Show Error Notifier before Opening Debugger') on:showErrorNotifier.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7306
    box addCheckBox:(resources string:'Verbose Backtrace by Default in Debugger') on:showVerboseStack.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7307
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7308
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7309
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7310
        addHelpButtonFor:'Launcher/sourceSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7311
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7312
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7313
    box maxExtent:1000@600.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7314
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7315
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7316
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7317
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7318
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7319
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7320
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7321
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7322
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7323
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7324
        Smalltalk logDoits:logDoits value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7325
        Class updateChanges:updChanges value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7326
        ObjectMemory nameForChanges:changeFileName value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7327
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7328
        (hasManager and:[useManager value]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7329
            manager isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7330
                Smalltalk at:#SourceCodeManager put:(AbstractSourceCodeManager defaultManager).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7331
                manager := Smalltalk at:#SourceCodeManager.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7332
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7333
            Class tryLocalSourceFirst:(localSourceFirst value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7334
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7335
            manager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7336
"/                localSourceFirst value ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7337
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7338
                    nm := sourceCacheDir value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7339
                    nm size > 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7340
                        (fn := nm asFilename) exists ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7341
                            (self confirm:('CVS cache directory ''' , nm , ''' does not exists\create ?' withCRs)) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7342
                                fn makeDirectory; 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7343
                                   makeReadableForAll;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7344
                                   makeWritableForAll;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7345
                                   makeExecutableForAll.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7346
                            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7347
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7348
                        (fn exists 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7349
                        and:[fn isDirectory
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7350
                        and:[fn isReadable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7351
                        and:[fn isWritable]]]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7352
                            AbstractSourceCodeManager cacheDirectoryName:(sourceCacheDir value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7353
                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7354
                            self warn:'Invalid sourceCache directory.'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7355
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7356
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7357
"/                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7358
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7359
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7360
            repositoryHolder notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7361
                repositoryHolder value size > 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7362
                    manager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7363
                        manager initializeForRepository:repositoryHolder value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7364
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7365
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7366
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7367
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7368
            Smalltalk at:#SourceCodeManager put:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7369
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7370
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7371
        showErrorNotifier value ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7372
            Exception emergencyHandler:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7373
        ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7374
            Exception emergencyHandler:(AbstractLauncherApplication notifyingEmergencyHandler)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7375
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7376
        DebugView defaultVerboseBacktrace:(showVerboseStack value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7377
        currentUserPrefs syntaxColoring:syntaxColoring value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7378
        currentUserPrefs at:#fullSelectorCheck put:fullSelectorCheck value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7379
        currentUserPrefs autoFormatting:autoFormat value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7380
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7381
        UserPreferences current at:#checkClassesWhenCheckingIn put:checkClassesWhenCheckingIn value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7382
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7383
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7384
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7385
    "Modified: / 9.9.1996 / 22:43:36 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7386
    "Created: / 17.1.1997 / 17:39:33 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7387
    "Modified: / 16.4.1998 / 17:18:47 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7388
    "Modified: / 13.10.1998 / 15:47:31 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7389
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7390
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7391
stcCompilerSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7392
    "open an extra dialog on stc-compiler related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7393
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7394
    |box      
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7395
     stcIncludes stcDefines stcOptions
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7396
     stcLibraries stcLibraryPath cc stc ccOptions   
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7397
     linkCommand linkArgs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7398
     component t
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7399
     canLoadBinaries thisIsADemoVersion
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7400
     resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7401
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7402
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7403
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7404
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7405
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7406
    stcIncludes := Compiler stcCompilationIncludes asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7407
    stcDefines := Compiler stcCompilationDefines asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7408
    stcOptions := Compiler stcCompilationOptions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7409
    ccOptions := Compiler ccCompilationOptions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7410
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7411
    cc := Compiler ccPath asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7412
    stc := Compiler stcPath asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7413
    linkCommand := ObjectFileLoader linkCommand asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7414
    linkArgs := ObjectFileLoader linkArgs asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7415
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7416
    ObjectFileLoader notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7417
        (t := ObjectFileLoader searchedLibraries) notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7418
            stcLibraries := (String fromStringCollection:t separatedBy:' ') asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7419
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7420
        (t := ObjectFileLoader libPath) notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7421
            stcLibraryPath := t asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7422
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7423
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7424
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7425
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7426
    box label:(resources string:'STC Compilation Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7427
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7428
    thisIsADemoVersion := (Smalltalk releaseIdentification = 'ST/X_free_demo_vsn').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7429
    ObjectFileLoader notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7430
        thisIsADemoVersion ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7431
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7432
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7433
                            addLabelledInputField:(resources string:'stc Command:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7434
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7435
                            on:stc 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7436
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7437
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7438
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7439
            component preferredExtent:(100 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7440
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7441
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7442
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7443
                            addLabelledInputField:(resources string:'stc Options:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7444
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7445
                            on:stcOptions 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7446
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7447
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7448
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7449
            component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7450
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7451
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7452
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7453
                            addLabelledInputField:(resources string:'cc Command:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7454
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7455
                            on:cc 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7456
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7457
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7458
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7459
            component preferredExtent:(150 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7460
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7461
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7462
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7463
                            addLabelledInputField:(resources string:'cc Options:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7464
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7465
                            on:ccOptions 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7466
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7467
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7468
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7469
            component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7470
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7471
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7472
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7473
                            addLabelledInputField:(resources string:'Include Directories:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7474
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7475
                            on:stcIncludes 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7476
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7477
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7478
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7479
            component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7480
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7481
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7482
"/        box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7483
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7484
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7485
                            addLabelledInputField:(resources string:'Defines:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7486
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7487
                            on:stcDefines 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7488
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7489
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7490
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7491
            component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7492
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7493
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7494
"/        box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7495
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7496
"/        box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7497
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7498
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7499
                            addLabelledInputField:(resources string:'Link Command:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7500
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7501
                            on:linkCommand 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7502
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7503
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7504
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7505
            component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7506
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7507
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7508
            component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7509
                            addLabelledInputField:(resources string:'Link Args:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7510
                            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7511
                            on:linkArgs 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7512
                            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7513
                            separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7514
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7515
            component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7516
            canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7517
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7518
            stcLibraries notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7519
"/            box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7520
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7521
                component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7522
                                addLabelledInputField:(resources string:'C-libraries:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7523
                                adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7524
                                on:stcLibraries 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7525
                                tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7526
                                separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7527
                component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7528
                component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7529
                canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7530
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7531
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7532
            stcLibraryPath notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7533
"/            box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7534
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7535
                component := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7536
                                addLabelledInputField:(resources string:'stc LibPath:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7537
                                adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7538
                                on:stcLibraryPath 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7539
                                tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7540
                                separateAtX:0.3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7541
                component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7542
                component preferredExtent:(250 @ component preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7543
                canLoadBinaries ifFalse:[component disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7544
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7545
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7546
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7547
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7548
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7549
        addHelpButtonFor:'Launcher/compilerSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7550
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7551
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7552
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7553
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7554
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7555
        thisIsADemoVersion  ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7556
            Compiler stcCompilationIncludes:stcIncludes value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7557
            Compiler stcCompilationDefines:stcDefines value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7558
            Compiler stcCompilationOptions:stcOptions value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7559
            Compiler ccCompilationOptions:ccOptions value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7560
            Compiler ccPath:cc value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7561
            stc value ~= Compiler stcPath ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7562
                Compiler stcPath:stc value
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7563
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7564
            ObjectFileLoader linkCommand:linkCommand value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7565
            ObjectFileLoader linkArgs:linkArgs value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7566
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7567
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7568
        ObjectFileLoader notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7569
            stcLibraries notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7570
                ObjectFileLoader searchedLibraries:(stcLibraries value asCollectionOfWords).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7571
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7572
            stcLibraryPath notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7573
                ObjectFileLoader libPath:(stcLibraryPath value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7574
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7575
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7576
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7577
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7578
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7579
    "Modified: / 10.9.1995 / 19:19:18 / claus"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7580
    "Modified: / 9.9.1996 / 22:42:47 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7581
    "Created: / 2.10.1998 / 16:27:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7582
    "Modified: / 21.10.1998 / 19:15:10 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7583
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7584
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7585
toolSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7586
    "open a dialog on tool settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7587
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7588
    |box resources currentUserPrefs in acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7589
     useNewInspector useNewChangesBrowser useNewSystemBrowser useNewVersionDiffBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7590
     useNewFileBrowser showClockInLauncher showClock launcher transcriptBufferSize |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7591
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7592
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7593
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7594
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7595
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7596
    "/ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7597
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7598
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7599
    useNewInspector := currentUserPrefs useNewInspector asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7600
    useNewChangesBrowser := currentUserPrefs useNewChangesBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7601
    useNewSystemBrowser := currentUserPrefs useNewSystemBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7602
    showClockInLauncher := currentUserPrefs showClockInLauncher asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7603
    useNewVersionDiffBrowser := currentUserPrefs useNewVersionDiffBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7604
    useNewFileBrowser := currentUserPrefs useNewFileBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7605
    transcriptBufferSize := Transcript current lineLimit printString asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7606
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7607
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7608
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7609
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7610
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7611
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7612
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7613
    box label:(resources string:'Tool Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7614
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7615
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7616
    box addCheckBox:(resources string:'Use the New Changes Browser') on:useNewChangesBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7617
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7618
    box addCheckBox:(resources string:'Use the New System Browser') on:useNewSystemBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7619
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7620
    box addCheckBox:(resources string:'Use the New VersionDiff Browser') on:useNewVersionDiffBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7621
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7622
    (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7623
        box addCheckBox:(resources string:'Use the New File Browser') on:useNewFileBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7624
        box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7625
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7626
    box addCheckBox:(resources string:'Use Hierarchical Inspector') on:useNewInspector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7627
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7628
    box addCheckBox:(resources string:'Show Clock in Launcher') on:showClockInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7629
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7630
    in := box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7631
            addLabelledInputField:(resources string:'Transcripts Buffer Size:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7632
            adjust:#right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7633
            on:transcriptBufferSize 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7634
            tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7635
            separateAtX:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7636
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7637
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7638
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7639
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7640
        addHelpButtonFor:'Launcher/toolSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7641
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7642
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7643
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7644
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7645
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7646
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7647
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7648
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7649
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7650
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7651
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7652
        acceptChannel value:false; value:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7653
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7654
        currentUserPrefs useNewInspector:useNewInspector value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7655
        currentUserPrefs useNewChangesBrowser:useNewChangesBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7656
        currentUserPrefs useNewSystemBrowser:useNewSystemBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7657
        currentUserPrefs useNewVersionDiffBrowser:useNewVersionDiffBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7658
        currentUserPrefs useNewFileBrowser:useNewFileBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7659
        (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7660
            useNewFileBrowser value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7661
                FileBrowserV2 installInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7662
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7663
                FileBrowserV2 isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7664
                    FileBrowserV2 removeFromLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7665
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7666
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7667
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7668
        showClock := showClockInLauncher value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7669
        currentUserPrefs showClockInLauncher ~= showClock ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7670
            currentUserPrefs showClockInLauncher:showClock.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7671
            launcher := Transcript application.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7672
            (launcher isKindOf:ToolApplicationModel) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7673
                showClock ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7674
                    launcher startClock
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7675
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7676
                    launcher stopClock
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7677
                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7678
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7679
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7680
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7681
        Inspector := currentUserPrefs inspectorClassSetting.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7682
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7683
        transcriptBufferSize := Integer readFrom:transcriptBufferSize value onError:Transcript current lineLimit.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7684
        Transcript current lineLimit:transcriptBufferSize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7685
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7686
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7687
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7688
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7689
    "Modified: / 9.9.1996 / 22:43:36 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7690
    "Modified: / 16.4.1998 / 17:18:47 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7691
    "Created: / 13.10.1998 / 15:44:36 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7692
    "Modified: / 12.11.2001 / 15:48:54 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7693
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7694
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7695
viewStyleSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7696
    self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7697
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7698
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7699
viewStyleSettingsFor:requestor 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7700
    "open a dialog on viewStyle related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7701
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7702
    |resourceDir dir box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7703
     list listView scrView infoLabel infoForwarder newStyle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7704
     someRsrcFile didApply resources listUpdater showStandardStylesOnly standardStyles|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7705
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7706
    showStandardStylesOnly := true asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7707
    standardStyles := #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7708
                        'decWindows'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7709
                        'iris' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7710
                        'motif' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7711
                        'mswindows95' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7712
                        'next' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7713
                        'normal'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7714
                        'os2' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7715
                        'st80' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7716
                       ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7717
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7718
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7719
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7720
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7721
     search resources directory for a list of .style files ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7722
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7723
    someRsrcFile := Smalltalk getSystemFileName:('resources' asFilename constructString:'normal.style').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7724
    someRsrcFile isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7725
        someRsrcFile := Smalltalk getResourceFileName:'normal.style' forPackage:'stx:libview'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7726
        someRsrcFile isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7727
            someRsrcFile := Smalltalk getResourceFileName:'styles/normal.style' forPackage:'stx:libview'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7728
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7729
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7730
    someRsrcFile notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7731
        resourceDir := someRsrcFile asFilename directoryName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7732
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7733
        resourceDir := Smalltalk getSystemFileName:'resources'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7734
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7735
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7736
    resourceDir isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7737
        self warn:'no styles found (missing ''resources'' directory)'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7738
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7739
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7740
    dir := resourceDir asFilename directoryContents.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7741
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7742
    list := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7743
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7744
    listUpdater := [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7745
        |listOfStyles lastSelection|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7746
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7747
        lastSelection := list selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7748
        listOfStyles := dir select:[:aFileName | aFileName asFilename hasSuffix:'style'].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7749
        listOfStyles := listOfStyles collect:[:aFileName | aFileName asFilename withoutSuffix name].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7750
        Filename isCaseSensitive ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7751
            listOfStyles := listOfStyles collect:[:aStyleName | aStyleName asLowercase].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7752
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7753
        listOfStyles remove:'generic' ifAbsent:nil; remove:'mswindows3' ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7754
        showStandardStylesOnly value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7755
            listOfStyles := listOfStyles select:[:aStyleName | standardStyles includes:aStyleName].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7756
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7757
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7758
        listOfStyles sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7759
        list list:listOfStyles.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7760
        list selection:lastSelection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7761
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7762
    listUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7763
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7764
    showStandardStylesOnly onChangeEvaluate:listUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7765
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7766
    infoForwarder := [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7767
                        |nm sheet comment|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7768
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7769
                        comment := ''.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7770
                        nm := list selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7771
                        nm notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7772
                            sheet := ViewStyle fromFile:(nm , '.style').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7773
                            comment := (sheet at:#comment ifAbsent:'') withoutSeparators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7774
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7775
                        comment := comment withCRs asStringCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7776
                        comment size == 1 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7777
                            comment := comment first
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7778
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7779
                        infoLabel label:comment
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7780
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7781
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7782
    list onChangeEvaluate:infoForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7783
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7784
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7785
    box label:(resources string:'Style Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7786
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7787
    (box addTextLabel:(resources at:'STYLE_MSG' default:'Select a Style') withCRs) adjust:#left.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7788
    listView := SelectionInListView on:list.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7789
    listView doubleClickAction:[:sel | box acceptChannel value:true. box hide].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7790
    box addCheckBox:(resources string:'standard styles only') on:showStandardStylesOnly.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7791
    scrView := box addComponent:(ScrollableView forView:listView) tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7792
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7793
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7794
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7795
    (infoLabel := box addTextLabel:'\\' withCRs) adjust:#centerLeft.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7796
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7797
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7798
"/ mhmh - the newLauncher does not yet handle apply (without close) correctly
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7799
"/    b := box addButton:(Button label:(resources string:'apply')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7800
"/    b action:[didApply := true. requestor changeViewStyleTo:(list selection)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7801
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7802
    (standardStyles includes:View defaultStyle) ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7803
        showStandardStylesOnly value:false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7804
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7805
    list selection:(View defaultStyle).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7806
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7807
    box stickAtBottomWithVariableHeight:scrView.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7808
    box stickAtBottomWithFixHeight:infoLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7809
    didApply := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7810
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7811
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7812
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7813
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7814
        ((newStyle := list selection) ~= View defaultStyle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7815
        or:[didApply ~~ true]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7816
            requestor notNil ifTrue:[requestor changeViewStyleTo:newStyle].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7817
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7818
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7819
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7820
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7821
     self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7822
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7823
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7824
    "Modified: / 14.9.1998 / 20:33:59 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  7825
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  7826
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  7827
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs - file'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  7828
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7829
objectModuleDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7830
    "opens a moduleInfo dialog"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7831
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7832
    <resource: #programMenu >
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7833
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7834
    |allModules moduleNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7835
     allObjects methodObjects methodNames 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7836
     cObjects cObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7837
     otherObjects otherObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7838
     box l handles unloadButton unloadAndRemoveButton
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7839
     list1 list2 listView1 listView2
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7840
     y panel 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7841
     showBuiltIn showModules showMethods showCObjects showOthers
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7842
     moduleListUpdater check canDoIt menu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7843
     resources middleLabel|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7844
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7845
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7846
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7847
    showBuiltIn := true asValue. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7848
    canDoIt := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7849
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7850
    showModules := canDoIt asValue. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7851
    showMethods := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7852
    showCObjects := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7853
    showOthers := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7854
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7855
    list1 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7856
    list2 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7857
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7858
    moduleListUpdater := [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7859
            |l|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7860
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7861
            list2 list:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7862
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7863
            l := Array new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7864
            handles := Array new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7865
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7866
            (showModules value or:[showBuiltIn value]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7867
                allModules := ObjectMemory binaryModuleInfo asOrderedCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7868
                (showBuiltIn value and:[showModules value]) ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7869
                    allModules := allModules select:[:i |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7870
                        |wantToSee|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7871
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7872
                        wantToSee := i dynamic.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7873
                        showBuiltIn value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7874
                            wantToSee := wantToSee not
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7875
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7876
                        wantToSee
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7877
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7878
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7879
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7880
                "/ sorting by reverse id brings newest ones to the top (a side effect)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7881
                allModules sort:[:a :b | (a id) > (b id)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7882
                moduleNames := allModules collect:[:entry | entry name].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7883
                l := l , moduleNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7884
                handles := handles , allModules.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7885
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7886
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7887
            showMethods value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7888
                allObjects := ObjectFileLoader loadedObjectHandles.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7889
                methodObjects := (allObjects select:[:h | h isMethodHandle]) asArray.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7890
                methodNames := methodObjects collect:[:mH | mH method isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7891
                                                                'compiled method - removed' " , ' (in ' , mH pathName , ')' "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7892
                                                            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7893
                                                                'compiled method ' , mH method whoString  " , ' (in ' , mH pathName , ')' "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7894
                                                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7895
                                                     ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7896
                l := l , methodNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7897
                handles := handles , methodObjects.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7898
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7899
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7900
            showCObjects value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7901
                allObjects := ObjectFileLoader loadedObjectHandles.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7902
                cObjects := (allObjects select:[:h | h isFunctionObjectHandle]) asArray.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7903
                cObjectNames := cObjects collect:[:entry | entry pathName].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7904
                l := l , cObjectNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7905
                handles := handles , cObjects.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7906
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7907
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7908
            showOthers value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7909
                allObjects := ObjectFileLoader loadedObjectHandles.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7910
                otherObjects := (allObjects select:[:h | (h isFunctionObjectHandle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7911
                                                         or:[h isMethodHandle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7912
                                                         or:[h isClassLibHandle]]) not]) asArray.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7913
                otherObjectNames := otherObjects collect:[:entry | entry pathName].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7914
                l := l , otherObjectNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7915
                handles := handles , otherObjects.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7916
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7917
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7918
            showBuiltIn value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7919
                l := #('VM') , l.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7920
                handles := #(VM) , handles.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7921
                allModules := #(VM) , allModules.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7922
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7923
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7924
            list1 list:l.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7925
            unloadButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7926
            unloadAndRemoveButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7927
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7928
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7929
    showBuiltIn onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7930
    showModules onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7931
    showMethods onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7932
    showCObjects onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7933
    showOthers onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7934
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7935
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7936
    box label:(resources string:'ST/X & Module Version information').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7937
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7938
    listView1 := HVScrollableView for:SelectionInListView miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7939
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7940
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7941
    listView1 action:[:sel |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7942
        |info classNames tabs module|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7943
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7944
        listView1 middleButtonMenu:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7945
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7946
        box withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7947
            |nm fileName addr entry1 entry2 entry3 method l|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7948
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7949
            tabs := TabulatorSpecification unit:#inch positions:#(0 2.6 3.5).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7950
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7951
            (showModules value or:[showBuiltIn value]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7952
                info := allModules at:sel ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7953
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7954
            info isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7955
                "/ selected a method, cObject or unknown
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7956
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7957
                module := handles at:sel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7958
                fileName := module pathName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7959
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7960
                module isMethodHandle ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7961
                    middleLabel label:'contains method:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7962
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7963
                    (method := module method) isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7964
                        nm := '** removed **'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7965
                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7966
                        menu := PopUpMenu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7967
                                    labels:#('inspect' 'browse')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7968
                                    selectors:#(inspect browse).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7969
                        menu actionAt:#inspect put:[ method inspect ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7970
                        menu actionAt:#browse put:[ |who|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7971
                                                    who := method who.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7972
                                                    UserPreferences systemBrowserClass
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7973
                                                        openInClass:(who methodClass) 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7974
                                                        selector:(who methodSelector) 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7975
                                                  ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7976
                        listView1 middleButtonMenu:menu.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7977
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7978
                        nm := (method whoString) asText emphasizeAllWith:(#color->Color blue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7979
                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7980
                    entry1 := MultiColListEntry new:2 tabulatorSpecification:tabs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7981
                    entry1 colAt:1 put:'compiled method'; colAt:2 put:nm.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7982
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7983
                    entry2 := MultiColListEntry new:2 tabulatorSpecification:tabs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7984
                    entry2 colAt:1 put:'path'; colAt:2 put:fileName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7985
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7986
                    entry3 := MultiColListEntry new:2 tabulatorSpecification:tabs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7987
                    entry3 colAt:1 put:'address'; colAt:2 put:('(16r) ' , (method code address hexPrintString leftPaddedTo:8 with:$0)).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7988
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7989
                    list2 list:(Array with:entry1 with:entry2 with:entry3).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7990
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7991
                    (module isFunctionObjectHandle 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7992
                    and:[module functions notEmpty]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7993
                        middleLabel label:'contains function:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7994
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7995
                        menu := PopUpMenu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7996
                                    labels:#('inspect')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7997
                                    selectors:#(inspect).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7998
                        menu actionAt:#inspect put:[ module functions inspect  ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7999
                        listView1 middleButtonMenu:menu.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8000
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8001
                        list2 list:((module functions select:[:f | f notNil])
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8002
                                        collect:[:f | |entry|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8003
                                                        entry := MultiColListEntry new:2 tabulatorSpecification:tabs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8004
                                                        entry colAt:1 put:(f name asText emphasizeAllWith:(#color->Color blue)).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8005
                                                        entry colAt:2 put:('address: (16r) ' , (f code address hexPrintString leftPaddedTo:8 with:$0)).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8006
                                                        entry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8007
                                                ]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8008
                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8009
                        list2 list:#('nothing known about contents (no functions have been extracted)').    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8010
                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8011
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8012
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8013
                unloadButton enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8014
                unloadAndRemoveButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8015
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8016
                info == #VM ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8017
                    "/ dummy entry for VM;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8018
                    "/ show file versions in lower view.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8019
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8020
                    middleLabel label:'contains modules:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8021
                    l := (ObjectMemory getVMIdentificationStrings).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8022
                    l := l select:[:entry | entry includesString:'$Header'].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8023
                    l := l select:[:entry | entry includesString:',v'].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8024
                    l := l collect:[:entry |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8025
                        |i1 i2 file revision date listEntry|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8026
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8027
                        listEntry := MultiColListEntry new:3 tabulatorSpecification:tabs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8028
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8029
                        i1 := entry indexOfSubCollection:'librun'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8030
                        i1 ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8031
                            i2 := entry indexOfSubCollection:',v' startingAt:i1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8032
                            i2 ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8033
                                file := entry copyFrom:i1+7 to:(i2-1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8034
                                listEntry colAt:1 put:file.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8035
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8036
                                i1 := i2+3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8037
                                i2 := entry indexOfSeparatorStartingAt:i1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8038
                                revision := entry copyFrom:i1 to:(i2-1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8039
                                listEntry colAt:2 put:revision.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8040
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8041
                                i1 := i2+1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8042
                                i2 := entry indexOfSeparatorStartingAt:i1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8043
                                date := entry copyFrom:i1 to:(i2-1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8044
                                listEntry colAt:3 put:date.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8045
                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8046
                        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8047
                        listEntry.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8048
                        "/ entry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8049
                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8050
                    list2 list:l.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8051
                
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8052
                    unloadButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8053
                    unloadAndRemoveButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8054
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8055
                    "/ selected a package
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8056
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8057
                    "/ fill bottom list with class-info
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8058
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8059
                    middleLabel label:'contains classes:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8060
                    classNames := info classNames asSortedCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8061
                    classNames := classNames select:[:cName |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8062
                                    |cls|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8063
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8064
                                    cls := Smalltalk classNamed:cName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8065
                                    cls isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8066
                                        true "a removed class"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8067
                                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8068
                                        cls isPrivate not
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8069
                                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8070
                                  ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8071
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8072
                    classNames := classNames collect:[:cName |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8073
                                    |cls entry rev listEntry|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8074
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8075
                                    listEntry := MultiColListEntry new:2 tabulatorSpecification:tabs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8076
                                    listEntry colAt:1 put:cName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8077
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8078
                                    cls := Smalltalk classNamed:cName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8079
                                    cls isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8080
                                        listEntry colAt:2 put:'(class removed)'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8081
                                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8082
                                        rev := cls binaryRevision.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8083
                                        rev notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8084
                                            cls isLoaded ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8085
                                                entry := '(stub for: ' , rev.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8086
                                            ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8087
                                                entry :='(bin: ' , rev.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8088
                                            ].    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8089
                                            cls revision ~= rev ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8090
                                                entry := entry , ' / src: ' , (cls revision printString)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8091
                                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8092
                                            listEntry colAt:2 put:entry , ')'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8093
                                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8094
                                           cls revision notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8095
                                                listEntry colAt:2 put:'(overloaded by: ' , cls revision , ')' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8096
                                           ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8097
                                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8098
                                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8099
                                    listEntry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8100
                                  ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8101
                    list2 list:classNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8102
                    info dynamic ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8103
                        unloadButton enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8104
                        unloadAndRemoveButton enable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8105
                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8106
                        unloadButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8107
                        unloadAndRemoveButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8108
                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8109
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8110
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8111
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8112
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8113
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8114
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8115
    panel := HorizontalPanelView new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8116
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8117
    panel add:(l := Label label:'show:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8118
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8119
    panel add:(check := CheckBox label:'builtin' model:showBuiltIn).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8120
    box makeTabable:check.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8121
    panel add:(check := CheckBox label:'classLibs' model:showModules).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8122
    canDoIt ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8123
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8124
    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8125
        box makeTabable:check.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8126
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8127
    panel add:(check := CheckBox label:'methods' model:showMethods).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8128
    canDoIt ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8129
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8130
    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8131
        box makeTabable:check.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8132
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8133
    panel add:(check := CheckBox label:'c-objects' model:showCObjects).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8134
    canDoIt ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8135
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8136
    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8137
        box makeTabable:check.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8138
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8139
    panel add:(check := CheckBox label:'others' model:showOthers).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8140
    canDoIt ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8141
        check disable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8142
    ] ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8143
        box makeTabable:check.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8144
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8145
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8146
    panel horizontalLayout:#fitSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8147
    "/ panel horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8148
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8149
    box addComponent:panel tabable:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8150
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8151
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8152
    box addComponent:listView1 tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8153
    listView1 topInset:(View viewSpacing + panel preferredExtent y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8154
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8155
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8156
    l := box addTextLabel:(resources string:'contains:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8157
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8158
    l origin:0.0@0.4 corner:1.0@0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8159
    l topInset:(View viewSpacing).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8160
    l bottomInset:((l preferredExtent y) negated - View viewSpacing).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8161
    middleLabel := l.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8162
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8163
    listView2 := HVScrollableView for:SelectionInListView  miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8164
    listView2 model:list2; printItems:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8165
    box addComponent:listView2 tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8166
    listView2 origin:0.0@0.4 corner:1.0@1.0. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8167
    listView2 disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8168
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8169
    unloadButton := Button label:(resources string:'unload').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8170
    unloadButton action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8171
        box withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8172
            |info idx pathName|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8173
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8174
            idx := list1 selectionIndex.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8175
            info := allModules at:idx ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8176
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8177
            list1 selectionIndex:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8178
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8179
            info isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8180
                "/ selected a method
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8181
                "/ idx := idx - allModules size.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8182
                pathName := (handles at:idx) pathName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8183
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8184
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8185
                "/ selected a package
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8186
                pathName := info pathName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8187
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8188
            ObjectFileLoader unloadObjectFile:pathName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8189
            moduleListUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8190
            unloadButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8191
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8192
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8193
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8194
    unloadAndRemoveButton := Button label:(resources string:'remove classes & unload').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8195
    unloadAndRemoveButton action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8196
        box withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8197
            |info idx pathName|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8198
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8199
            idx := list1 selectionIndex.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8200
            info := allModules at:idx ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8201
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8202
            list1 selectionIndex:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8203
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8204
            info isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8205
                "/ selected a method
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8206
                "/ idx := idx - allModules size.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8207
                pathName := (handles at:idx) pathName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8208
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8209
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8210
                "/ selected a package
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8211
                pathName := info pathName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8212
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8213
            ObjectFileLoader unloadObjectFileAndRemoveClasses:pathName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8214
            moduleListUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8215
            unloadAndRemoveButton disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8216
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8217
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8218
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8219
    moduleListUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8220
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8221
    box addButton:unloadButton.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8222
    box addButton:unloadAndRemoveButton.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8223
    box addAbortButtonLabelled:(resources string:'dismiss').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8224
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8225
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8226
    listView2 topInset:(l preferredExtent y + 5).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8227
    listView2 bottomInset:(box preferredExtent y - y).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8228
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8229
    box width:(400 min:(box device width * 2 // 3)); 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8230
        height:(450 min:(box device height - 50)).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8231
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8232
"/  box sizeFixed:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8233
    box openWithExtent:(600 min:(box device width * 2 // 3))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8234
                       @
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8235
                       (500 min:(box device height - 50)) .
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8236
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8237
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8238
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8239
    "Modified: / 17.9.1995 / 16:47:50 / claus"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8240
    "Created: / 31.7.1998 / 15:49:45 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8241
    "Modified: / 10.8.1998 / 11:33:22 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8242
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8243
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8244
packageDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8245
    "opens a package dialog"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8246
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8247
    |allPackages packageList packageUpdater
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8248
     box listView tabs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8249
     menu resources selectedPackage|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8250
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8251
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8252
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8253
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8254
    box label:(resources string:'Packages').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8255
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8256
    allPackages := Set new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8257
    allPackages addAll:(Smalltalk knownPackages).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8258
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8259
    Project knownProjects do:[:package |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8260
        allPackages add:(package name)    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8261
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8262
    Project loadedProjects do:[:package |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8263
        allPackages add:(package name)    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8264
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8265
    allPackages := allPackages asOrderedCollection sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8266
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8267
    packageUpdater := [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8268
        tabs := TabulatorSpecification unit:#inch positions:#(0 4).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8269
        packageList := allPackages collect:[:pName | |pkg entry|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8270
                            entry := MultiColListEntry new:2 tabulatorSpecification:tabs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8271
                            pkg := Project projectWithId:pName asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8272
                            (pkg notNil and:[pkg isLoaded]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8273
                                entry colAt:1 put:pName allBold.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8274
                                entry colAt:2 put:'loaded'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8275
                            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8276
                                entry colAt:1 put:pName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8277
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8278
                                (Smalltalk allClasses
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8279
                                     contains:[:cls | cls package = pName and:[cls isLoaded not]])
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8280
                                ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8281
                                    (Smalltalk allClasses
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8282
                                         contains:[:cls | cls package = pName and:[cls isLoaded]])
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8283
                                    ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8284
                                        entry colAt:2 put:'loaded/autoloaded'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8285
                                    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8286
                                        entry colAt:2 put:'autoloaded'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8287
                                    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8288
                                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8289
                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8290
                            entry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8291
                       ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8292
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8293
    packageUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8294
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8295
    listView := HVScrollableView for:SelectionInListView miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8296
    listView list:packageList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8297
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8298
    box addComponent:listView tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8299
    listView origin:0.0@0.0 corner:1.0@1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8300
    listView bottomInset:40.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8301
    listView action:[:selIndex | |pkg|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8302
                        selectedPackage := (allPackages at:selIndex) asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8303
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8304
                        pkg := Project projectWithId:selectedPackage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8305
                        (pkg notNil and:[pkg isLoaded]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8306
                            menu disable:#load.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8307
"/                            menu enable:#unload.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8308
                        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8309
"/                            menu disable:#unload.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8310
                            menu enable:#load.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8311
                        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8312
                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8313
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8314
    menu := PopUpMenu 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8315
                itemList:#(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8316
                    ('load...'    load  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8317
"/                    ('-'          nil   )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8318
"/                    ('unload...'  unload)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8319
                )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8320
                resources:resources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8321
    listView middleButtonMenu:menu.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8322
    menu actionAt:#load   put:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8323
                                box withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8324
                                    Smalltalk loadPackage:selectedPackage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8325
                                    packageUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8326
                                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8327
                              ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8328
"/    menu actionAt:#unload put:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8329
"/                                box withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8330
"/                                    Smalltalk unloadPackage:selectedPackage.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8331
"/                                    packageUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8332
"/                                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8333
"/                              ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8334
    menu disable:#load.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8335
"/    menu disable:#unload.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8336
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8337
    box addAbortButtonLabelled:(resources string:'dismiss').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8338
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8339
    box width:(400 min:(box device width * 2 // 3)); 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8340
        height:(450 min:(box device height - 50)).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8341
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8342
    box openWithExtent:(600 min:(box device width * 2 // 3))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8343
                       @
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8344
                       (500 min:(box device height - 50)) .
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8345
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8346
    box destroy.
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8347
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8348
2884
587baa691c68 fixes & adds for multiple CVSRoots
Claus Gittinger <cg@exept.de>
parents: 2883
diff changeset
  8349
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs - private'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8350
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8351
cvsConfigurationDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8352
    |cvsRootHolder resources defaultsList bindings dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8353
     listOfModules selectedPerModuleRoot rootsPerModule acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8354
     removeEnabled cvsBinDirectoryHolder|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8355
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8356
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8357
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8358
    OperatingSystem isUNIXlike ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8359
        defaultsList := #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8360
                          '/files/CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8361
                          '/CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8362
                          'host:/files/CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8363
                          'host:/CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8364
                          ':pserver:user@host:/files/CVS'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8365
                         ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8366
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8367
        OperatingSystem isMSDOSlike ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8368
            defaultsList := #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8369
                              ':local:c:\files\CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8370
                              ':local:c:\CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8371
                              'host:/files/CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8372
                              'host:/CVS' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8373
                              ':pserver:user@host:/files/CVS'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8374
                             ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8375
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8376
            defaultsList := #('host:/files/CVS' 'host:/CVS' ':pserver:user@host:/files/CVS').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8377
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8378
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8379
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8380
    cvsRootHolder := CVSSourceCodeManager repositoryName ? '/files/CVS'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8381
    cvsRootHolder := cvsRootHolder asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8382
    rootsPerModule := Dictionary new declareAllFrom:(CVSSourceCodeManager repositoryNamesPerModule).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8383
    cvsBinDirectoryHolder := CVSSourceCodeManager cvsBinDirectory asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8384
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8385
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8386
    bindings at:#acceptChannel put:(acceptChannel := TriggerValue new).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8387
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8388
    bindings at:#cvsRootPrototypeList put:defaultsList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8389
    bindings at:#cvsRootHolder put:cvsRootHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8390
    bindings at:#perModuleRootModule put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8391
    bindings at:#perModuleRoot put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8392
    bindings at:#removeEnabled put:(removeEnabled := false asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8393
    bindings at:#listOfModules put:(listOfModules := rootsPerModule keys asList).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8394
    bindings at:#cvsBinDirectoryHolder put:cvsBinDirectoryHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8395
    listOfModules sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8396
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8397
    bindings at:#selectedPerModuleRoot put:(selectedPerModuleRoot := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8398
    selectedPerModuleRoot 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8399
             onChangeEvaluate:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8400
                            |module cvsRoot|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8401
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8402
                            acceptChannel value:true.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8403
                            module := selectedPerModuleRoot value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8404
                            removeEnabled value:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8405
                            cvsRoot := rootsPerModule at:module ifAbsent:''.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8406
                            (bindings at:#perModuleRootModule) value:module.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8407
                            (bindings at:#perModuleRoot) value:cvsRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8408
             ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8409
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8410
    bindings at:#help put:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8411
                            WindowGroup activeGroup withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8412
                                HTMLDocumentView openFullOnHelpFile:'Launcher/cvsSetup.html'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8413
                            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8414
                          ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8415
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8416
    bindings at:#addPerModuleRoot put:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8417
                            |module cvsRoot|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8418
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8419
                            acceptChannel value:true.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8420
                            module := (bindings at:#perModuleRootModule) value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8421
                            cvsRoot := (bindings at:#perModuleRoot) value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8422
                            (listOfModules includes:module) ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8423
                                listOfModules add:module.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8424
                                listOfModules sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8425
                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8426
                            cvsRoot size > 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8427
                                rootsPerModule at:module put:cvsRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8428
                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8429
                          ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8430
    bindings at:#removePerModuleRoot put:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8431
                            |module|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8432
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8433
                            acceptChannel value:true.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8434
                            module := (bindings at:#perModuleRootModule) value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8435
                            listOfModules remove:module ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8436
                            rootsPerModule removeKey:module ifAbsent:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8437
                            (bindings at:#perModuleRootModule) value:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8438
                            (bindings at:#perModuleRoot) value:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8439
                          ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8440
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8441
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8442
    dialog resources:resources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8443
    (dialog openSpec:(self cvsSetupSpec) withBindings:bindings) ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8444
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8445
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8446
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8447
    acceptChannel value.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8448
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8449
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8450
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8451
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8452
    CVSSourceCodeManager cvsBinDirectory:cvsBinDirectoryHolder value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8453
    CVSSourceCodeManager initializeForRepository:cvsRootHolder value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8454
    CVSSourceCodeManager repositoryNamesPerModule:rootsPerModule.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8455
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8456
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8457
fontBoxForEncoding:encodingMatch 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8458
    "open a fontBox, showing fonts which match some encoding
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8459
     (used when changing to japanese ...)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8460
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8461
    |box y b
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8462
     labelDef buttonDef listDef menuDef textDef
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8463
     models labels allOfThem filter resources defaultButton|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8464
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8465
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8466
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8467
    encodingMatch notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8468
        filter := [:f | f encoding notNil 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8469
                        and:[encodingMatch match:f encoding]].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8470
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8471
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8472
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8473
    labels := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8474
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8475
    models add:(allOfThem := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8476
    models add:(labelDef := Label defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8477
    models add:(buttonDef := Button defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8478
    models add:(listDef := SelectionInListView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8479
    models add:(menuDef := MenuView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8480
    models add:(textDef := TextView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8481
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8482
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8483
    box label:(resources string:'Font Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8484
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8485
    models
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8486
    with:(resources array:#('All' 'Labels' 'Buttons' 'Lists' 'Menus' 'Edited Text'))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8487
    do:[:model :title |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8488
        |y2 lbl f i|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8489
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8490
        f := model value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8491
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8492
        (box addTextLabel:title) adjust:#left.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8493
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8494
        y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8495
        b := box addComponent:(Button label:(resources string:'Change ...')) tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8496
        b relativeExtent:nil; extent:(b preferredExtent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8497
        y2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8498
        box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8499
        i := box leftIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8500
        box leftIndent:(b widthIncludingBorder + View viewSpacing).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8501
        (lbl := box addTextLabel:'')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8502
            adjust:#left;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8503
            font:(model value);
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8504
            labelChannel:(BlockValue 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8505
                            with:[:v | |f|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8506
                                f := v value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8507
                                f isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8508
                                    ''
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8509
                                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8510
                                    f userFriendlyName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8511
                                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8512
                            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8513
                            argument:model).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8514
        labels add:lbl.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8515
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8516
        box leftIndent:i.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8517
        box yPosition:(box yPosition max:y2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8518
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8519
        box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8520
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8521
        b action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8522
            |f|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8523
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8524
            f := FontPanel 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8525
                fontFromUserInitial:(model value) 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8526
                              title:(resources string:'Font for %1' with:title)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8527
                             filter:filter.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8528
            f notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8529
                model == allOfThem ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8530
                    models do:[:m | m value:f].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8531
                    labels do:[:l | l font:f]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8532
                ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8533
                    model value:f.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8534
                    lbl font:f.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8535
                ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8536
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8537
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8538
        model == allOfThem ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8539
            box addVerticalSpace
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8540
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8541
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8542
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8543
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8544
    defaultButton := Button label:(resources string:'Defaults').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8545
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8546
    (DialogBox styleSheet at:'dialogBox.okAtLeft') ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8547
        box addButton:defaultButton after:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8548
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8549
        box addButton:defaultButton before:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8550
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8551
    defaultButton
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8552
        action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8553
            "/ fetch defaults
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8554
            View readStyleSheetAndUpdateAllStyleCaches.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8555
            labelDef value: Label defaultFont.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8556
            buttonDef value: Button defaultFont.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8557
            listDef value: SelectionInListView defaultFont.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8558
            menuDef value: MenuView defaultFont.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8559
            textDef value: TextView defaultFont.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8560
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8561
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8562
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8563
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8564
        Label defaultFont:labelDef value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8565
        Button defaultFont:buttonDef value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8566
        Toggle defaultFont:buttonDef value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8567
        TextView withAllSubclasses do:[:cls | cls defaultFont:textDef value].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8568
        SelectionInListView withAllSubclasses do:[:cls | cls defaultFont:listDef value].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8569
        MenuView defaultFont:menuDef value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8570
        PullDownMenu defaultFont:menuDef value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8571
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8572
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8573
    ^ box accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8574
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8575
    "Created: / 27.2.1996 / 01:44:16 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8576
    "Modified: / 17.6.1996 / 13:38:48 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8577
    "Modified: / 15.9.1998 / 22:04:51 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8578
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8579
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8580
formattingConfigurationDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8581
    |dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8582
     resources exampleText formattedText reformatAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8583
     reformatLocked
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8584
     oldUserPreferences
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8585
     currentUserPrefs 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8586
     tabIndent  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8587
     spaceAroundTemporaries emptyLineAfterTemporaries 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8588
     spaceAfterReturnToken spaceAfterKeywordSelector cStyleBlocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8589
     blockArgumentsOnNewLine
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8590
     maxLengthForSingleLineBlocks resetValue bindings|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8591
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8592
    RBFormatter isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8593
        ^ self warn:'Sorry, no RBFormatter class'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8594
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8595
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8596
    RBFormatter isLoaded ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8597
        WindowGroup activeGroup withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8598
            RBFormatter autoload
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8599
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8600
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8601
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8602
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8603
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8604
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8605
    exampleText := 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8606
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8607
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8608
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8609
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8610
    |index|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8611
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8612
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8613
    self at:index.                      "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8614
    self at:index put:methodArg.        "/ a two arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8615
    self from:1 to:index put:methodArg. "/ a three arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8616
    methodArg ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8617
        Transcript showCR:''hello''.      "/ condition
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8618
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8619
    methodArg ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8620
        Transcript showCR:''hello''.      "/ condition
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8621
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8622
        Transcript showCR:''world''.      
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8623
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8624
    [methodArg] whileTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8625
        Transcript showCR:''hello''.      "/ looping
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8626
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8627
    [self aVeryLongConditionBlock and:[self toMakeBlockLonger]] whileTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8628
        Transcript showCR:''hello''.      "/ long blocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8629
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8630
    methodArg do:[:element |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8631
        Transcript showCR:''hello''.      "/ looping
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8632
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8633
    1 to:methodArg size do:[:index |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8634
        Transcript showCR:''hello''.      "/ looping
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8635
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8636
    methodArg keysAndValuesDo:[:index |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8637
        Transcript showCR:''hello''.      "/ looping
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8638
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8639
    Object errorSignal handle:[:ex |      
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8640
        ex return                         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8641
    ] do:[                                "/ exception handling
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8642
        self someAction                   "/ blocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8643
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8644
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8645
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8646
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8647
    formattedText := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8648
    reformatLocked := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8649
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8650
    reformatAction := [ |tree
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8651
                         s_tabIndent s_spaceAroundTemporaries s_emptyLineAfterTemporaries
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8652
                         s_spaceAfterReturnToken s_spaceAfterKeywordSelector s_cStyleBlocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8653
                         s_maxLengthForSingleLineBlocks s_blockArgumentsOnNewLine|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8654
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8655
                        reformatLocked ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8656
                            "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8657
                            "/ temporary change the RBFormatters settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8658
                            "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8659
                            s_tabIndent := RBFormatter tabIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8660
                            s_spaceAroundTemporaries := RBFormatter spaceAroundTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8661
                            s_emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8662
                            s_spaceAfterReturnToken := RBFormatter spaceAfterReturnToken.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8663
                            s_spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8664
                            s_cStyleBlocks := RBFormatter cStyleBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8665
                            s_blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8666
                            s_maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8667
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8668
                            RBFormatter 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8669
                                tabIndent:tabIndent value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8670
                                spaceAroundTemporaries:spaceAroundTemporaries value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8671
                                emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8672
                                spaceAfterReturnToken:spaceAfterReturnToken value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8673
                                spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8674
                                cStyleBlocks:cStyleBlocks value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8675
                                blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8676
                                maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8677
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8678
                            tree := RBParser 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8679
                                        parseMethod:exampleText
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8680
                                        onError: [:aString :position | nil].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8681
                            tree do:[:node |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8682
                                (node ~~ tree and:[node parent isNil]) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8683
                                    self error:'No parent for node'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8684
                                ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8685
                            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8686
                            formattedText value:tree printString.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8687
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8688
                            RBFormatter 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8689
                                tabIndent:s_tabIndent;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8690
                                spaceAroundTemporaries:s_spaceAroundTemporaries;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8691
                                emptyLineAfterTemporaries:s_emptyLineAfterTemporaries;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8692
                                spaceAfterReturnToken:s_spaceAfterReturnToken;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8693
                                spaceAfterKeywordSelector:s_spaceAfterKeywordSelector;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8694
                                cStyleBlocks:s_cStyleBlocks;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8695
                                blockArgumentsOnNewLine:s_blockArgumentsOnNewLine;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8696
                                maxLengthForSingleLineBlocks:s_maxLengthForSingleLineBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8697
                          ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8698
                      ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8699
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8700
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8701
    bindings at:#formattedText put:formattedText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8702
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8703
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8704
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8705
    tabIndent := RBFormatter tabIndent asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8706
    tabIndent onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8707
    bindings at:#tabIndent put:tabIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8708
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8709
    spaceAroundTemporaries := RBFormatter spaceAroundTemporaries asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8710
    spaceAroundTemporaries onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8711
    bindings at:#spaceAroundTemporaries put:spaceAroundTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8712
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8713
    emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8714
    emptyLineAfterTemporaries onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8715
    bindings at:#emptyLineAfterTemporaries put:emptyLineAfterTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8716
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8717
    spaceAfterReturnToken := RBFormatter spaceAfterReturnToken asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8718
    spaceAfterReturnToken onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8719
    bindings at:#spaceAfterReturnToken put:spaceAfterReturnToken.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8720
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8721
    spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8722
    spaceAfterKeywordSelector onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8723
    bindings at:#spaceAfterKeywordSelector put:spaceAfterKeywordSelector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8724
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8725
    cStyleBlocks := RBFormatter cStyleBlocks asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8726
    cStyleBlocks onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8727
    bindings at:#cStyleBlocks put:cStyleBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8728
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8729
    blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8730
    blockArgumentsOnNewLine onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8731
    bindings at:#blockArgumentsOnNewLine put:blockArgumentsOnNewLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8732
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8733
    maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8734
    maxLengthForSingleLineBlocks onChangeEvaluate:reformatAction. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8735
    bindings at:#maxLengthForSingleLineBlocks put:maxLengthForSingleLineBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8736
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8737
    bindings at:#resetList   put:#( 'ST/X default' 'RB default' ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8738
    bindings at:#resetValue  put:(resetValue := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8739
    resetValue onChangeEvaluate:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8740
        [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8741
            resetValue value == 1 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8742
                "/ ST/X defaults
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8743
                reformatLocked := true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8744
                tabIndent value: 4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8745
                spaceAfterReturnToken value: true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8746
                spaceAfterKeywordSelector value: false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8747
                spaceAroundTemporaries value: false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8748
                emptyLineAfterTemporaries value: true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8749
                cStyleBlocks value: true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8750
                blockArgumentsOnNewLine value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8751
                maxLengthForSingleLineBlocks value: 20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8752
                reformatLocked := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8753
                reformatAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8754
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8755
            resetValue value == 2 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8756
                "/ RBParser defaults
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8757
                reformatLocked := true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8758
                tabIndent value: 8.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8759
                spaceAfterReturnToken value: false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8760
                spaceAfterKeywordSelector value: true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8761
                spaceAroundTemporaries value: true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8762
                emptyLineAfterTemporaries value: false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8763
                cStyleBlocks value: false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8764
                blockArgumentsOnNewLine value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8765
                maxLengthForSingleLineBlocks value: 20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8766
                reformatLocked := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8767
                reformatAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8768
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8769
            resetValue value:nil. "/ to force default label
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8770
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8771
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8772
    reformatAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8773
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8774
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8775
    "/ create a box on those ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8776
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8777
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8778
    dialog postBuildBlock:[:builder |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8779
                                (builder componentAt:#sampleTextView) 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8780
                                    cursorMovementWhenUpdating:nil;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8781
                                    scrollWhenUpdating:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8782
                          ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8783
    (dialog openFor:nil 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8784
        spec:(self formatterDialogSpec) 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8785
        withBindings:bindings) 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8786
    ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8787
        currentUserPrefs at:#'formatter.tabIndent' put:tabIndent value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8788
        currentUserPrefs at:#'formatter.spaceAroundTemporaries' put:spaceAroundTemporaries value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8789
        currentUserPrefs at:#'formatter.emptyLineAfterTemporaries' put:emptyLineAfterTemporaries value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8790
        currentUserPrefs at:#'formatter.spaceAfterReturnToken' put:spaceAfterReturnToken value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8791
        currentUserPrefs at:#'formatter.spaceAfterKeywordSelector' put:spaceAfterKeywordSelector value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8792
        currentUserPrefs at:#'formatter.cStyleBlocks' put:cStyleBlocks value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8793
        currentUserPrefs at:#'formatter.blockArgumentsOnNewLine' put:blockArgumentsOnNewLine value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8794
        currentUserPrefs at:#'formatter.maxLengthForSingleLineBlocks' put:maxLengthForSingleLineBlocks value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8795
        RBFormatter 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8796
            tabIndent:tabIndent value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8797
            spaceAroundTemporaries:spaceAroundTemporaries value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8798
            emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8799
            spaceAfterReturnToken:spaceAfterReturnToken value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8800
            spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8801
            cStyleBlocks:cStyleBlocks value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8802
            blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8803
            maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8804
    ] ifFalse: [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8805
        (UserPreferences reset; current) declareAllFrom: oldUserPreferences
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8806
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8807
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8808
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8809
syntaxColorConfigurationDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8810
    |box frame exampleView y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8811
     resources exampleText coloredText recolorAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8812
     syntaxColor syntaxColors colorMenu oldUserPreferences
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8813
     syntaxEmphasises syntaxColorSelector syntaxEmphasisSelector syntaxColoringBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8814
     syntaxEmphasisesBox syntaxColoringResetButton b resetList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8815
     resetListBox currentUserPrefs|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8816
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8817
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8818
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8819
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8820
    exampleText := 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8821
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8822
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8823
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8824
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8825
    |methodVar|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8826
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8827
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8828
    self at:methodArg.        "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8829
    self fooBarBaz:methodVar. "/ a bad message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8830
    methodVar := Array new:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8831
    unknonVar := 1.           "/ a bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8832
    UnknonVar := 1.           "/ another bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8833
    "self bar:methodVar.  detect commented code easily"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8834
    1 to:5 do:[:i | self at:i + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8835
    Transcript showCR:''some string'' , #someSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8836
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8837
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8838
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8839
    coloredText := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8840
    recolorAction := [ coloredText value:(SyntaxHighlighter formatMethod:exampleText in:nil) ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8841
    recolorAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8842
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8843
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8844
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8845
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8846
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8847
    box label:(resources string:'Syntax Colors').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8848
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8849
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8850
    frame extent:1.0 @ 200.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8851
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8852
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8853
    exampleView := HVScrollableView for:TextView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8854
    exampleView model:coloredText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8855
    exampleView origin:0.0@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8856
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8857
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8858
    box addComponent:frame withExtent:1.0@200.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8859
    box makeTabable:exampleView. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8860
    frame width:1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8861
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8862
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8863
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8864
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8865
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8866
    syntaxColoringBox := box addComboListOn: (syntaxColors := SelectionInList with:UserPreferences syntaxColorNames initialSelection:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8867
    syntaxColorSelector    := [(syntaxColors selection replChar:$  withString: '') asLowercaseFirst asSymbol].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8868
    syntaxEmphasisSelector := [((syntaxColorSelector value readStream upToAll: 'Color'), 'Emphasis') asLowercaseFirst asSymbol].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8869
    syntaxColor := (currentUserPrefs perform: syntaxColorSelector value) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8870
    colorMenu := ColorMenu new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8871
    colorMenu model: syntaxColor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8872
    syntaxColor onChangeEvaluate: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8873
        [currentUserPrefs at:  syntaxColorSelector value put: syntaxColor value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8874
         recolorAction value.].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8875
    syntaxColors onChangeEvaluate: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8876
        [|eVal|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8877
         syntaxColor value: (currentUserPrefs perform:syntaxColorSelector value).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8878
         eVal := currentUserPrefs perform: syntaxEmphasisSelector value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8879
         eVal isArray ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8880
            eVal = (Array with:#underwave with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8881
                eVal := #'red underwave'    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8882
            ].    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8883
            eVal = (Array with:#bold with:#underwave with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8884
                eVal := #'bold+red underwave'    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8885
            ].    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8886
            eVal = (Array with:#bold with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8887
                eVal := #'bold+red underline'    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8888
            ].    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8889
            eVal = (Array with:#italic with:#underwave with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8890
                eVal := #'italic+red underwave'    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8891
            ].    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8892
            eVal = (Array with:#italic with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8893
                eVal := #'italic+red underline'    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8894
            ].    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8895
         ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8896
         syntaxEmphasises selection: eVal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8897
         recolorAction value.].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8898
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8899
    syntaxEmphasises := SelectionInList 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8900
                            with:#(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8901
                                    normal
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8902
                                    underline
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8903
                                    #'red underline'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8904
                                    underwave
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8905
                                    #'red underwave'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8906
                                    bold
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8907
                                    boldUnderline
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8908
                                    #'bold+red underline'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8909
                                    boldUnderwave
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8910
                                    #'bold+red underwave'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8911
                                    italic
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8912
                                    italicUnderline
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8913
                                    #'italic+red underline'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8914
                                    italicUnderwave
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8915
                                    #'italic+red underwave'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8916
                                    reverse
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8917
                                  ) 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8918
                            initialSelection:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8919
    syntaxEmphasisesBox := box addComboListOn:syntaxEmphasises.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8920
    syntaxEmphasises 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8921
        onChangeEvaluate:[ |em|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8922
            em := syntaxEmphasises selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8923
            em notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8924
                em := em asSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8925
                em == #'red underline' ifTrue:[ em := Array with:#underline with:(#underlineColor->Color red)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8926
                em == #'red underwave' ifTrue:[ em := Array with:#underwave with:(#underlineColor->Color red)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8927
                em == #'bold+red underline' ifTrue:[ em := Array with:#bold with:#underline with:(#underlineColor->Color red)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8928
                em == #'bold+red underwave' ifTrue:[ em := Array with:#bold with:#underwave with:(#underlineColor->Color red)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8929
                em == #'italic+red underline' ifTrue:[ em := Array with:#italic with:#underline with:(#underlineColor->Color red)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8930
                em == #'italic+red underwave' ifTrue:[ em := Array with:#italic with:#underwave with:(#underlineColor->Color red)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8931
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8932
                currentUserPrefs at: syntaxEmphasisSelector value put:em.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8933
            ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8934
            recolorAction value
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8935
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8936
    syntaxColors changed:#value. "/ to force initial update of emphasis
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8937
    box addComponent:colorMenu tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8938
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8939
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8940
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8941
    b := Button new label: (resources string:'reset to:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8942
    b action:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8943
        |resetSelector|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8944
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8945
        resetSelector := (currentUserPrefs listOfPredefinedSyntaxColoringSchemes
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8946
                             collect:[:eachEntry | eachEntry first])
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8947
                                 at:resetList selectionIndex.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8948
        currentUserPrefs perform:resetSelector. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8949
        recolorAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8950
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8951
    syntaxColoringResetButton := box addComponent:b.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8952
    box makeTabable:syntaxColoringResetButton.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8953
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8954
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8955
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8956
    resetList := SelectionInList 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8957
                            with:(currentUserPrefs listOfPredefinedSyntaxColoringSchemes
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8958
                                        collect:[:eachEntry | eachEntry second])
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8959
                            initialSelection:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8960
    resetListBox := box addComboListOn:resetList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8961
    box makeTabable:resetListBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8962
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8963
    syntaxColoringBox enable.  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8964
    colorMenu enable.  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8965
    syntaxEmphasisesBox enable.  
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8966
    syntaxColoringResetButton enable. 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8967
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8968
    box 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8969
"/        addHelpButtonFor:'Launcher/sourceSettings.html';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8970
        addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8971
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8972
    box stickAtBottomWithVariableHeight:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8973
    box stickAtBottomWithFixHeight:syntaxColoringBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8974
    box stickAtBottomWithFixHeight:syntaxEmphasisesBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8975
    box stickAtBottomWithFixHeight:colorMenu.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8976
    box stickAtBottomWithFixHeight:syntaxColoringResetButton left:0.0 right:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8977
    box stickAtBottomWithFixHeight:resetListBox left:0.5 right:1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8978
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8979
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8980
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8981
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8982
    box extent:600@400.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8983
    box openModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8984
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8985
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8986
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8987
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8988
    box accepted ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8989
    ] ifFalse: [
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8990
        (UserPreferences reset; current) declareAllFrom: oldUserPreferences
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8991
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8992
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8993
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8994
    "Modified: / 16.4.1998 / 17:18:16 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  8995
    "Modified: / 7.7.1999 / 00:27:02 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8996
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8997
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  8998
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'interface specs'!
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  8999
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9000
cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9001
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9002
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9003
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9004
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9005
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9006
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9007
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9008
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9009
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9010
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9011
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9012
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9013
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9014
     #(#FullSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9015
        #name: #cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9016
        #window: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9017
       #(#WindowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9018
          #label: 'CVS Setup'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9019
          #name: 'CVS Setup'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9020
          #min: #(#Point 436 316)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9021
          #max: #(#Point 1280 1024)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9022
          #bounds: #(#Rectangle 13 23 449 377)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9023
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9024
        #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9025
       #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9026
          #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9027
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9028
              #label: 'CVS BinDirectory:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9029
              #name: 'Label1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9030
              #layout: #(#LayoutFrame 0 0.0 36 0 40 0.25 53 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9031
              #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9032
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9033
              #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9034
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9035
           #(#InputFieldSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9036
              #name: 'BinDirectoryField'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9037
              #layout: #(#LayoutFrame 44 0.25 34 0 -1 1 56 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9038
              #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9039
              #model: #cvsBinDirectoryHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9040
              #acceptChannel: #acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9041
              #acceptOnPointerLeave: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9042
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9043
           #(#DividerSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9044
              #name: 'Separator3'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9045
              #layout: #(#LayoutFrame 0 0.0 60 0 0 1.0 64 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9046
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9047
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9048
              #label: 'CVS SourceCodeManager setup'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9049
              #name: 'label'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9050
              #layout: #(#LayoutFrame 1 0.0 3 0 -1 1.0 20 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9051
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9052
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9053
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9054
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9055
              #label: 'CVSRoot default:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9056
              #name: 'defaultCvsRootLabel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9057
              #layout: #(#LayoutFrame 0 0.0 71 0 40 0.25 88 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9058
              #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9059
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9060
              #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9061
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9062
           #(#ComboBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9063
              #name: 'cvsRootComboBox'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9064
              #layout: #(#LayoutFrame 44 0.25 71 0 -1 1.0 93 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9065
              #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9066
              #model: #cvsRootHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9067
              #immediateAccept: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9068
              #acceptOnLeave: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9069
              #acceptOnReturn: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9070
              #acceptOnTab: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9071
              #acceptOnLostFocus: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9072
              #acceptChannel: #acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9073
              #acceptOnPointerLeave: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9074
              #comboList: #cvsRootPrototypeList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9075
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9076
           #(#DividerSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9077
              #name: 'Separator1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9078
              #layout: #(#LayoutFrame 0 0.0 96 0 0 1.0 100 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9079
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9080
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9081
              #label: 'CVSRoot per Module:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9082
              #name: 'knownModulesLabel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9083
              #layout: #(#LayoutFrame 0 0.0 109 0 40 0.25 126 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9084
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9085
              #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9086
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9087
           #(#SequenceViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9088
              #name: 'List1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9089
              #layout: #(#LayoutFrame 44 0.25 104 0 -1 1 202 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9090
              #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9091
              #model: #selectedPerModuleRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9092
              #hasHorizontalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9093
              #hasVerticalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9094
              #miniScrollerHorizontal: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9095
              #useIndex: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9096
              #sequenceList: #listOfModules
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9097
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9098
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9099
              #label: 'Module:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9100
              #name: 'moduleLabel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9101
              #layout: #(#LayoutFrame 0 0.0 209 0 40 0.25 226 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9102
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9103
              #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9104
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9105
           #(#InputFieldSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9106
              #name: 'perModuleRootModuleEntryField'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9107
              #layout: #(#LayoutFrame 44 0.25 205 0 -1 1 227 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9108
              #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9109
              #model: #perModuleRootModule
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9110
              #acceptChannel: #acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9111
              #acceptOnPointerLeave: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9112
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9113
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9114
              #label: 'CVSRoot:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9115
              #name: 'cvsRootLabel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9116
              #layout: #(#LayoutFrame 0 0.0 236 0 40 0.25 253 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9117
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9118
              #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9119
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9120
           #(#ComboBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9121
              #name: 'perModuleRootComboBox'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9122
              #layout: #(#LayoutFrame 44 0.25 232 0 -1 1.0 254 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9123
              #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9124
              #model: #perModuleRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9125
              #immediateAccept: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9126
              #acceptOnLeave: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9127
              #acceptOnReturn: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9128
              #acceptOnTab: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9129
              #acceptOnLostFocus: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9130
              #acceptChannel: #acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9131
              #acceptOnPointerLeave: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9132
              #comboList: #cvsRootPrototypeList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9133
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9134
           #(#HorizontalPanelViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9135
              #name: 'HorizontalPanel1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9136
              #layout: #(#LayoutFrame 44 0.25 258 0 -1 1 289 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9137
              #horizontalLayout: #fitSpace
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9138
              #verticalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9139
              #horizontalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9140
              #verticalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9141
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9142
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9143
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9144
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9145
                    #label: 'Add/Apply'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9146
                    #name: 'addButton'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9147
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9148
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9149
                    #model: #addPerModuleRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9150
                    #extent: #(#Point 136 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9151
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9152
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9153
                    #label: 'Remove'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9154
                    #name: 'removeButton'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9155
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9156
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9157
                    #model: #removePerModuleRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9158
                    #enableChannel: #removeEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9159
                    #extent: #(#Point 137 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9160
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9161
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9162
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9163
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9164
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9165
           #(#DividerSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9166
              #name: 'Separator2'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9167
              #layout: #(#LayoutFrame 0 0.0 -45 1 0 1.0 -34 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9168
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9169
           #(#HorizontalPanelViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9170
              #name: 'buttonPanel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9171
              #layout: #(#LayoutFrame 0 0.0 -29 1.0 0 1.0 -3 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9172
              #horizontalLayout: #fitSpace
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9173
              #verticalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9174
              #horizontalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9175
              #verticalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9176
              #ignoreInvisibleComponents: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9177
              #reverseOrderIfOKAtLeft: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9178
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9179
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9180
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9181
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9182
                    #label: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9183
                    #name: 'cancelButton'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9184
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9185
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9186
                    #model: #cancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9187
                    #extent: #(#Point 141 21)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9188
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9189
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9190
                    #label: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9191
                    #name: 'helpButton'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9192
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9193
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9194
                    #model: #help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9195
                    #extent: #(#Point 141 21)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9196
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9197
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9198
                    #label: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9199
                    #name: 'okButton'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9200
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9201
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9202
                    #model: #accept
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9203
                    #isDefault: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9204
                    #extent: #(#Point 142 21)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9205
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9206
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9207
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9208
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9209
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9210
           )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9211
         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9212
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9213
      )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9214
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9215
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9216
formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9217
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9218
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9219
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9220
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9221
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9222
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9223
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9224
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9225
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9226
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9227
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9228
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9229
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9230
     #(#FullSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9231
        #name: #formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9232
        #window: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9233
       #(#WindowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9234
          #label: 'Formatting parameters'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9235
          #name: 'Formatting parameters'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9236
          #min: #(#Point 10 10)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9237
          #max: #(#Point 1280 1024)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9238
          #bounds: #(#Rectangle 10 406 606 989)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9239
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9240
        #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9241
       #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9242
          #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9243
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9244
              #label: 'Sample output:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9245
              #name: 'Label2'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9246
              #layout: #(#LayoutFrame 0 0.0 4 0 0 1.0 26 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9247
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9248
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9249
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9250
           #(#TextEditorSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9251
              #name: 'sampleTextView'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9252
              #layout: #(#LayoutFrame 0 0.0 30 0.0 0 1.0 -234 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9253
              #level: -1
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9254
              #model: #formattedText
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9255
              #hasHorizontalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9256
              #hasVerticalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9257
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9258
           #(#FramedBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9259
              #label: 'Parameters'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9260
              #name: 'FramedBox1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9261
              #layout: #(#LayoutFrame 0 0.0 -225 1 0 1.0 -30 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9262
              #labelPosition: #topLeft
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9263
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9264
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9265
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9266
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9267
                 #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9268
                    #label: 'Max length for single line blocks:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9269
                    #name: 'Label1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9270
                    #layout: #(#LayoutFrame 185 0.0 127 0 66 0.7 153 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9271
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9272
                    #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9273
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9274
                 #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9275
                    #label: 'Space around temporaries '
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9276
                    #name: 'checkBox'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9277
                    #layout: #(#LayoutFrame 2 0 3 0 260 0 32 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9278
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9279
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9280
                    #model: #spaceAroundTemporaries
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9281
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9282
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9283
                 #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9284
                    #label: 'Blank line after local var declaration'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9285
                    #name: 'CheckBox1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9286
                    #layout: #(#LayoutFrame 267 0 3 0 567 0 32 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9287
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9288
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9289
                    #model: #emptyLineAfterTemporaries
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9290
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9291
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9292
                 #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9293
                    #label: 'Space after ''^'''
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9294
                    #name: 'CheckBox2'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9295
                    #layout: #(#LayoutFrame 2 0 31 0 260 0 60 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9296
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9297
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9298
                    #model: #spaceAfterReturnToken
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9299
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9300
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9301
                 #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9302
                    #label: 'Space after '':'' in keywords'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9303
                    #name: 'CheckBox3'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9304
                    #layout: #(#LayoutFrame 267 0 31 0 567 0 60 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9305
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9306
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9307
                    #model: #spaceAfterKeywordSelector
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9308
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9309
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9310
                 #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9311
                    #label: 'C-Style blocks'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9312
                    #name: 'CheckBox4'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9313
                    #layout: #(#LayoutFrame 2 0 59 0 260 0 88 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9314
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9315
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9316
                    #model: #cStyleBlocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9317
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9318
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9319
                 #(#InputFieldSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9320
                    #name: 'editField'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9321
                    #layout: #(#LayoutFrame 74 0.7 93 0 -38 1.0 119 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9322
                    #level: -1
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9323
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9324
                    #model: #tabIndent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9325
                    #type: #number
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9326
                    #immediateAccept: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9327
                    #acceptOnLeave: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9328
                    #acceptOnReturn: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9329
                    #acceptOnTab: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9330
                    #acceptOnLostFocus: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9331
                    #acceptOnPointerLeave: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9332
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9333
                 #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9334
                    #label: 'Indent:'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9335
                    #name: 'label'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9336
                    #layout: #(#LayoutFrame 242 0.0 93 0 66 0.7 119 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9337
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9338
                    #adjust: #right
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9339
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9340
                 #(#InputFieldSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9341
                    #name: 'EntryField1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9342
                    #layout: #(#LayoutFrame 74 0.7 127 0 -38 1.0 153 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9343
                    #level: -1
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9344
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9345
                    #model: #maxLengthForSingleLineBlocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9346
                    #type: #number
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9347
                    #immediateAccept: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9348
                    #acceptOnLeave: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9349
                    #acceptOnReturn: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9350
                    #acceptOnTab: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9351
                    #acceptOnLostFocus: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9352
                    #acceptOnPointerLeave: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9353
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9354
                 #(#PopUpListSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9355
                    #label: 'Reset to...'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9356
                    #name: 'PopUpList1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9357
                    #layout: #(#LayoutFrame 2 0 129 0 127 0 151 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9358
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9359
                    #model: #resetValue
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9360
                    #menu: #resetList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9361
                    #useIndex: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9362
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9363
                 #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9364
                    #label: 'Block args on new line'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9365
                    #name: 'CheckBox5'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9366
                    #layout: #(#LayoutFrame 267 0 59 0 567 0 88 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9367
                    #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9368
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9369
                    #model: #blockArgumentsOnNewLine
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9370
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9371
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9372
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9373
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9374
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9375
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9376
           #(#HorizontalPanelViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9377
              #name: 'horizontalPanelView'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9378
              #layout: #(#LayoutFrame 0 0.0 -35 1.0 0 1.0 0 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9379
              #level: 0
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9380
              #horizontalLayout: #fitSpace
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9381
              #verticalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9382
              #horizontalSpace: 4
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9383
              #verticalSpace: 4
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9384
              #ignoreInvisibleComponents: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9385
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9386
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9387
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9388
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9389
                    #label: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9390
                    #name: 'button'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9391
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9392
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9393
                    #model: #cancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9394
                    #useDefaultExtent: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9395
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9396
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9397
                    #label: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9398
                    #name: 'Button1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9399
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9400
                    #tabable: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9401
                    #model: #accept
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9402
                    #isDefault: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9403
                    #useDefaultExtent: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9404
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9405
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9406
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9407
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9408
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9409
           )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9410
         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9411
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9412
      )
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  9413
! !
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  9414
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9415
!AbstractLauncherApplication::MemorySettingsAppl class methodsFor:'interface specs'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9416
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9417
windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9418
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9419
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9420
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9421
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9422
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9423
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9424
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9425
     UIPainter new openOnClass:AbstractLauncherApplication::MemorySettingsAppl andSelector:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9426
     AbstractLauncherApplication::MemorySettingsAppl new openInterface:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9427
     AbstractLauncherApplication::MemorySettingsAppl open
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9428
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9429
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9430
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9431
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9432
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9433
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9434
        #name: #windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9435
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9436
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9437
          #label: 'Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9438
          #name: 'Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9439
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9440
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9441
          #bounds: #(#Rectangle 16 42 616 592)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9442
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9443
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9444
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9445
          #collection: #()
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9446
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9447
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9448
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9449
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9450
!AbstractLauncherApplication::MemorySettingsAppl methodsFor:'actions'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9451
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9452
doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9453
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9454
    self isPartOfSettinsDialog ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9455
        self loadRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9456
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9457
    self closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9458
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9459
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9460
evaluateModified
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9461
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9462
    self modifiedChannel value:(self hasUnsavedChanges).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9463
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9464
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9465
help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9466
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9467
    self warn:'no help available here'.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9468
"/    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/keyboardSetting.html'].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9469
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9470
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9471
loadRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9472
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9473
    self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9474
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9475
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9476
saveRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9477
    | result |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9478
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9479
    (self hasUnsavedChanges) ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9480
        result := self confirmWithCancel:(resources string:'Save changed Font Settings ?'). 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9481
        result isNil ifTrue:[ ^ false].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9482
        result ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9483
            self saveSettings.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9484
        ] 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9485
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9486
    ^ true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9487
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9488
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9489
saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9490
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9491
    self hasUnsavedChanges ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9492
        self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9493
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9494
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9495
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9496
!AbstractLauncherApplication::MemorySettingsAppl methodsFor:'aspects'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9497
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9498
modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9499
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9500
    modifiedChannel isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9501
        modifiedChannel := false asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9502
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9503
    ^ modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9504
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9505
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9506
!AbstractLauncherApplication::MemorySettingsAppl methodsFor:'change & update'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9507
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9508
update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9509
    "Invoked when an object that I depend upon sends a change notification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9510
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9511
    "stub code automatically generated - please change as required"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9512
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9513
"/    changedObject == self allOfThem ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9514
"/        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9515
"/    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9516
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9517
    super update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9518
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9519
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9520
!AbstractLauncherApplication::MemorySettingsAppl methodsFor:'initialization & release'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9521
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9522
closeRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9523
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9524
    self saveRequest ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9525
        ^ self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9526
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9527
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9528
    ^ super closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9529
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9530
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9531
initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9532
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9533
    resources := self class owningClass classResources.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9534
    super initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9535
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9536
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9537
postOpen
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9538
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9539
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9540
postOpenAsSubcanvasWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9541
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9542
    self postOpen.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9543
    ^ super postOpenAsSubcanvasWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9544
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9545
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9546
postOpenWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9547
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9548
    self postOpen.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9549
    ^ super postOpenWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9550
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9551
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9552
!AbstractLauncherApplication::MemorySettingsAppl methodsFor:'queries'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9553
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9554
hasUnsavedChanges
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9555
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9556
    ^ true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9557
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9558
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9559
!AbstractLauncherApplication::PlainSettingsAppl class methodsFor:'interface specs'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9560
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9561
windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9562
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9563
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9564
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9565
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9566
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9567
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9568
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9569
     UIPainter new openOnClass:AbstractLauncherApplication::MemorySettingsAppl andSelector:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9570
     AbstractLauncherApplication::MemorySettingsAppl new openInterface:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9571
     AbstractLauncherApplication::MemorySettingsAppl open
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9572
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9573
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9574
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9575
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9576
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9577
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9578
        #name: #windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9579
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9580
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9581
          #label: 'Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9582
          #name: 'Settings'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9583
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9584
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9585
          #bounds: #(#Rectangle 16 42 616 592)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9586
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9587
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9588
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9589
          #collection: #()
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9590
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9591
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9592
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9593
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9594
!AbstractLauncherApplication::PlainSettingsAppl methodsFor:'actions'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9595
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9596
doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9597
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9598
    self isPartOfSettinsDialog ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9599
        self loadRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9600
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9601
    self closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9602
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9603
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9604
evaluateModified
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9605
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9606
    self modifiedChannel value:(self hasUnsavedChanges).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9607
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9608
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9609
help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9610
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9611
    self warn:'no help available here'.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9612
"/    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/keyboardSetting.html'].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9613
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9614
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9615
loadRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9616
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9617
    self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9618
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9619
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9620
saveRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9621
    | result |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9622
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9623
    (self hasUnsavedChanges) ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9624
        result := self confirmWithCancel:(resources string:'Save changed Font Settings ?'). 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9625
        result isNil ifTrue:[ ^ false].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9626
        result ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9627
            self saveSettings.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9628
        ] 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9629
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9630
    ^ true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9631
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9632
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9633
saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9634
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9635
    self hasUnsavedChanges ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9636
        self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9637
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9638
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9639
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9640
!AbstractLauncherApplication::PlainSettingsAppl methodsFor:'aspects'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9641
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9642
modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9643
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9644
    modifiedChannel isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9645
        modifiedChannel := false asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9646
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9647
    ^ modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9648
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9649
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9650
!AbstractLauncherApplication::PlainSettingsAppl methodsFor:'change & update'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9651
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9652
update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9653
    "Invoked when an object that I depend upon sends a change notification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9654
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9655
    "stub code automatically generated - please change as required"
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9656
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9657
"/    changedObject == self allOfThem ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9658
"/        ^ self.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9659
"/    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9660
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9661
    super update:something with:aParameter from:changedObject
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9662
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9663
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9664
!AbstractLauncherApplication::PlainSettingsAppl methodsFor:'initialization & release'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9665
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9666
closeRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9667
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9668
    self saveRequest ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9669
        ^ self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9670
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9671
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9672
    ^ super closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9673
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9674
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9675
initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9676
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9677
    resources := self class owningClass classResources.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9678
    super initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9679
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9680
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9681
postOpen
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9682
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9683
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9684
postOpenAsSubcanvasWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9685
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9686
    self postOpen.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9687
    ^ super postOpenAsSubcanvasWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9688
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9689
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9690
postOpenWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9691
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9692
    self postOpen.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9693
    ^ super postOpenWith:aBuilder
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9694
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9695
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9696
!AbstractLauncherApplication::PlainSettingsAppl methodsFor:'queries'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9697
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9698
hasUnsavedChanges
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9699
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9700
    ^ true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9701
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9702
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9703
!AbstractLauncherApplication::SettingsDialog class methodsFor:'applications'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9704
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9705
addApplClass:aClass withName:aName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9706
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9707
    ApplicationList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9708
        self initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9709
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9710
    ApplicationList add:(Array with:aName with:aClass asString asSymbol)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9711
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9712
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9713
applList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9714
    ApplicationList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9715
        self initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9716
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9717
    ^ ApplicationList 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9718
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9719
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9720
defaultAppList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9721
    " list of settings applications 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9722
      format: nameString applicationClassNameMethod"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9723
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9724
    ^ #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9725
        #('Tools'    #'AbstractLauncherApplication::ToolsSettingsAppl')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9726
        #('Language' #'AbstractLauncherApplication::LanguageSettingsAppl')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9727
        #('Keyboard Mappings' #'AbstractLauncherApplication::KbdMappingSettingsAppl')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9728
        #('Style Selection' #'AbstractLauncherApplication::StyleSettingsAppl')
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9729
        #('System Messages' #'AbstractLauncherApplication::SystemMessageSettingsAppl')
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9730
        #('Compiler' #'AbstractLauncherApplication::CompilerSettingsAppl')
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9731
    ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9732
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9733
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9734
removeApplClass:aClass
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9735
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9736
    |index|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9737
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9738
    ApplicationList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9739
        self initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9740
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9741
    index := ApplicationList findFirst:[:el |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9742
        el second == aClass asSymbol
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9743
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9744
    index ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9745
        ApplicationList removeIndex:index.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9746
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9747
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9748
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9749
settingsAppListClasses
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9750
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9751
    ^ self applList collect:[:entry | entry last].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9752
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9753
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9754
settingsAppListNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9755
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9756
    ^ self applList collect:[:entry | entry first].
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9757
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9758
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9759
!AbstractLauncherApplication::SettingsDialog class methodsFor:'initialize'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9760
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9761
initialize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9762
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9763
    ApplicationList := self defaultAppList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9764
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9765
"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9766
    self initialize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9767
"
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9768
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9769
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9770
!AbstractLauncherApplication::SettingsDialog class methodsFor:'interface specs'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9771
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9772
windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9773
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9774
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9775
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9776
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9777
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9778
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9779
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9780
     UIPainter new openOnClass:AbstractLauncherApplication::SettingsDialog andSelector:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9781
     AbstractLauncherApplication::SettingsDialog new openInterface:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9782
     AbstractLauncherApplication::SettingsDialog open
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9783
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9784
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9785
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9786
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9787
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9788
     #(#FullSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9789
        #name: #windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9790
        #window: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9791
       #(#WindowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9792
          #label: 'Settings Dialog'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9793
          #name: 'Settings Dialog'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9794
          #min: #(#Point 10 10)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9795
          #max: #(#Point 1024 768)
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9796
          #bounds: #(#Rectangle 16 42 616 662)
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9797
          #menu: #mainMenu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9798
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9799
        #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9800
       #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9801
          #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9802
           #(#NoteBookViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9803
              #name: 'SettingsNoteBook'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9804
              #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 0 1.0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9805
              #model: #selectionHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9806
              #menu: #settingsAppList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9807
              #useIndex: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9808
              #canvas: #canvasHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9809
              #keepCanvasAlive: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9810
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9811
           )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9812
         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9813
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9814
      )
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9815
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9816
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9817
!AbstractLauncherApplication::SettingsDialog class methodsFor:'menu specs'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9818
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9819
mainMenu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9820
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9821
     by the MenuEditor of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9822
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9823
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9824
     the MenuEditor may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9825
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9826
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9827
     MenuEditor new openOnClass:SettingsDialog andSelector:#mainMenu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9828
     (Menu new fromLiteralArrayEncoding:(SettingsDialog mainMenu)) startUp
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9829
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9830
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9831
    <resource: #menu>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9832
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9833
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9834
     #(#Menu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9835
        #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9836
         #(#MenuItem
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9837
            #label: 'File'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9838
            #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9839
            #submenu: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9840
           #(#Menu
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9841
              #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9842
               #(#MenuItem
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9843
                  #label: 'Load Settings...'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9844
                  #itemValue: #loadSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9845
                  #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9846
                )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9847
               #(#MenuItem
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9848
                  #label: 'Save Settings...'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9849
                  #itemValue: #saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9850
                  #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9851
                )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9852
               #(#MenuItem
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9853
                  #label: 'Exit'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9854
                  #itemValue: #closeRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9855
                  #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9856
                )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9857
               )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9858
              nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9859
              nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9860
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9861
          )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9862
         )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9863
        nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9864
        nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9865
      )
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9866
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9867
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9868
!AbstractLauncherApplication::SettingsDialog methodsFor:'accessing'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9869
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9870
requestor
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9871
    "return the 'requestor' of the SettingsDialog"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9872
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9873
    ^ requestor
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9874
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9875
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9876
requestor:something
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9877
    "set the value of the instance variable 'requestor' (automatically generated)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9878
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9879
    requestor := something.
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9880
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9881
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9882
!AbstractLauncherApplication::SettingsDialog methodsFor:'actions'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9883
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9884
sendLoadRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9885
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9886
    colOfInstances do:[:settInst|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9887
        settInst loadRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9888
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9889
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9890
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9891
sendSaveRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9892
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9893
    |oldClient canvas|
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9894
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9895
    canvas := self canvasHolder value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9896
    canvas notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9897
        oldClient := canvas application.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9898
        oldClient notNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9899
            oldClient saveRequest ifFalse:[^ false].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9900
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9901
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9902
    ^ true
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9903
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9904
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9905
!AbstractLauncherApplication::SettingsDialog methodsFor:'aspects'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9906
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9907
canvasHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9908
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9909
    canvasHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9910
        canvasHolder := ValueHolder new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9911
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9912
    ^ canvasHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9913
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9914
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9915
selection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9916
    "get the selection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9917
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9918
    ^ selection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9919
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9920
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9921
selection:something
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9922
    "set the selection; update canvas
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9923
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9924
    selection ~~ something ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9925
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9926
        self sendSaveRequest ifFalse:[ ^ self].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9927
        selection := something.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9928
        selection ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9929
            self canvasHolder value:((colOfInstances at:selection) window).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9930
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9931
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9932
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9933
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9934
selectionHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9935
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9936
    selectionHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9937
        selectionHolder := AspectAdaptor new subject:self; forAspect:#selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9938
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9939
    ^ selectionHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9940
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9941
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9942
settingsAppList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9943
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9944
    ^ self class settingsAppListNames.
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9945
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9946
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9947
!AbstractLauncherApplication::SettingsDialog methodsFor:'initialization & release'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
  9948
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9949
closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9950
    "This is a hook method generated by the Browser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9951
     It will be invoked when your app/dialog-window is really closed.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9952
     See also #closeDownViews, which is invoked before and may suppress the close
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9953
     or ask the user for confirmation."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9954
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9955
    "/ change the code below as required ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9956
    "/ This should cleanup any leftover resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9957
    "/ (for example, temporary files)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9958
    "/ super closeRequest will initiate the closeDown
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9959
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9960
    "/ add your code here
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9961
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9962
    "/ do not remove the one below ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9963
    ^ super closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9964
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9965
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9966
closeRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9967
    "This is a hook method generated by the Browser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9968
     It will be invoked when your app/dialog-window is about to be
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9969
     closed (this method has a chance to suppress the close).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9970
     See also #closeDownViews, which is invoked when the close is really done."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9971
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9972
    self sendSaveRequest ifFalse:[ ^ self].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9973
    ^ super closeRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9974
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9975
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9976
initialize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9977
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
  9978
    resources := self class owningClass resources.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9979
    selectionHolder := AspectAdaptor new subject:self; forAspect:#selection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9980
    super initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9981
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9982
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9983
postBuildWith:aBuilder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9984
    "This is a hook method generated by the Browser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9985
     It will be invoked during the initialization of your app/dialog,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9986
     after all of the visual components have been built, 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9987
     but BEFORE the top window is made visible.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9988
     Add any app-specific actions here (reading files, setting up values etc.)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9989
     See also #postOpenWith:, which is invoked after opening."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9990
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9991
    "/ add any code here ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9992
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9993
    ^ super postBuildWith:aBuilder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9994
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9995
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9996
postOpenWith:aBuilder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9997
    "This is a hook method generated by the Browser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9998
     It will be invoked right after the applications window has been opened.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  9999
     Add any app-specific actions here (starting background processes etc.).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10000
     See also #postBuildWith:, which is invoked before opening."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10001
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10002
    "/ add any code here ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10003
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10004
    colOfInstances := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10005
    self class settingsAppListClasses do:[:cls| | className |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10006
        className := Smalltalk classNamed:cls.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10007
        cls isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10008
            Transcript showCR:'no class named:' , className
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10009
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10010
            | appl window|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10011
            appl := className new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10012
            window := ApplicationSubView new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10013
            appl createBuilder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10014
            window client:appl.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10015
            
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10016
            colOfInstances add:appl.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10017
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10018
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10019
    self selectionHolder value:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10020
    ^ super postOpenWith:aBuilder
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10021
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10022
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10023
!AbstractLauncherApplication::SettingsDialog methodsFor:'menu actions'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10024
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10025
loadSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10026
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10027
    "restore settings from a settings-file."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10028
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10029
    "a temporary kludge - we need a central systemSettings object for this,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10030
     which can be saved/restored with a single store/read."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10031
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10032
    |fileName|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10033
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10034
    fileName := Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10035
        requestFileName:(resources string:'Load Settings From:') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10036
        default:'settings.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10037
        ok:(resources string:'Load') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10038
        abort:(resources string:'Cancel') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10039
        pattern:'*.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10040
        fromDirectory:nil.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10041
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10042
    (fileName size == 0) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10043
        "/ canceled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10044
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10045
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10046
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10047
    self withWaitCursorDo:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10048
        Smalltalk fileIn:fileName.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10049
        Transcript current topView model reOpen.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10050
        self sendLoadRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10051
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10052
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10053
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10054
saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10055
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10056
    |fileName resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10057
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10058
    resources := self class owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10059
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10060
    fileName := Dialog 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10061
        requestFileName:(resources string:'Save settings in:') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10062
        default:'settings.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10063
        ok:(resources string:'Save') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10064
        abort:(resources string:'Cancel') 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10065
        pattern:'*.stx'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10066
        fromDirectory:'.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10067
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10068
    fileName size ~~ 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10069
        "not canceled"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10070
        self saveSettingsIn:fileName.
4243
2dc1cbadd5fc *** empty log message ***
penk
parents: 4242
diff changeset
 10071
    ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10072
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10073
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10074
saveSettingsIn:fileName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10075
    "save settings to a settings-file."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10076
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10077
    "a temporary kludge - we need a central systemSettings object for this,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10078
     which can be saved/restored with a single store/read.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10079
     Will move entries over to UserPreferences over time;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10080
     new items should always go there."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10081
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10082
    |resources s screen currentUserPrefs|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10083
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10084
    resources := self class owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10085
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10086
    s := fileName asFilename writeStream.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10087
    s isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10088
        self warn:(resources string:'Cannot write the %1 file !!' with:fileName).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10089
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10090
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10091
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10092
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10093
    screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10094
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10095
    s nextPutLine:'"/ ST/X saved settings';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10096
      nextPutLine:'"/ DO NOT MODIFY MANUALLY';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10097
      nextPutLine:'"/ (modifications would be lost with next save-settings)';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10098
      nextPutLine:'"/';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10099
      nextPutLine:'"/ this file was automatically generated by the';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10100
      nextPutLine:'"/ ''save settings'' function of the Launcher';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10101
      nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10102
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10103
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10104
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10105
    s nextPutLine:'"/ saved by ' , OperatingSystem getLoginName , '@' , OperatingSystem getHostName , ' at ' , AbsoluteTime now printString.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10106
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10107
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10108
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10109
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10110
    s nextPutLine:'"/ Display settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10111
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10112
    s nextPutLine:'"/ only restore the display settings, if on the same Display ...'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10113
    s nextPutLine:'Display notNil ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10114
    s nextPutLine:' Display displayName = ' , (screen displayName storeString) , ' ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10115
      screen fixColors notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10116
        s nextPutLine:'  Image flushDeviceImages.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10117
        s nextPutLine:'  Color colorAllocationFailSignal catch:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10118
        s nextPutLine:'    Color getColorsRed:6 green:6 blue:4 on:Display'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10119
        s nextPutLine:'  ].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10120
      ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10121
        s nextPutLine:'  Display releaseFixColors.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10122
      ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10123
      s nextPutLine:'  Display hasColors: ' , (screen hasColors storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10124
      s nextPutLine:'  Display widthInMillimeter: ' , (screen widthInMillimeter storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10125
      s nextPutLine:'  Display heightInMillimeter: ' , (screen heightInMillimeter storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10126
      s nextPutLine:'  Display supportsDeepIcons: ' , (screen supportsDeepIcons storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10127
      s nextPutLine:'  Image ditherAlgorithm: ' , (Image ditherAlgorithm storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10128
      s nextPutLine:'  View defaultStyle:' , View defaultStyle storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10129
    s nextPutLine:' ].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10130
    s nextPutLine:'].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10131
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10132
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10133
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10134
    s nextPutLine:'"/ Compiler settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10135
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10136
    s nextPutLine:'Compiler warnSTXSpecials: ' , (Compiler warnSTXSpecials storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10137
      nextPutLine:'Compiler warnUnderscoreInIdentifier: ' , (Compiler warnUnderscoreInIdentifier storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10138
      nextPutLine:'Compiler warnOldStyleAssignment: ' , (Compiler warnOldStyleAssignment storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10139
      nextPutLine:'Compiler warnCommonMistakes: ' , (Compiler warnCommonMistakes storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10140
      nextPutLine:'Compiler warnPossibleIncompatibilities: ' , (Compiler warnPossibleIncompatibilities storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10141
      nextPutLine:'Compiler allowUnderscoreInIdentifier: ' , (Compiler allowUnderscoreInIdentifier storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10142
      nextPutLine:'Compiler allowSqueakExtensions: ' , (Compiler allowSqueakExtensions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10143
      nextPutLine:'Compiler allowDolphinExtensions: ' , (Compiler allowDolphinExtensions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10144
      nextPutLine:'Compiler arraysAreImmutable: ' , (Compiler arraysAreImmutable storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10145
      nextPutLine:'Compiler lineNumberInfo: ' , (Compiler lineNumberInfo storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10146
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10147
      nextPutLine:'Compiler foldConstants: ' , (Compiler foldConstants storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10148
      nextPutLine:'Compiler stcCompilation: ' , (Compiler stcCompilation storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10149
      nextPutLine:'OperatingSystem getOSType = ' , (OperatingSystem getOSType storeString) , ' ifTrue:[';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10150
      nextPutLine:'  Compiler stcCompilationIncludes: ' , (Compiler stcCompilationIncludes storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10151
      nextPutLine:'  Compiler stcCompilationDefines: ' , (Compiler stcCompilationDefines storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10152
      nextPutLine:'  Compiler stcCompilationOptions: ' , (Compiler stcCompilationOptions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10153
      nextPutLine:'  ' , (Compiler stcModulePath storeString) , ' asFilename exists ifTrue:[';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10154
      nextPutLine:'    Compiler stcModulePath: ' , (Compiler stcModulePath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10155
      nextPutLine:'  ].';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10156
      nextPutLine:'  Compiler stcPath: ' , (Compiler stcPath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10157
      nextPutLine:'  Compiler ccCompilationOptions: ' , (Compiler ccCompilationOptions storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10158
      nextPutLine:'  Compiler ccPath: ' , (Compiler ccPath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10159
      nextPutLine:'  ObjectFileLoader linkArgs: ' , (ObjectFileLoader linkArgs storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10160
      nextPutLine:'  ObjectFileLoader linkCommand: ' , (ObjectFileLoader linkCommand storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10161
      nextPutLine:'  ObjectFileLoader libPath: ' , (ObjectFileLoader libPath storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10162
      nextPutLine:'  ObjectFileLoader searchedLibraries: ' , (ObjectFileLoader searchedLibraries storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10163
      nextPutLine:'].';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10164
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10165
      nextPutLine:'ObjectMemory justInTimeCompilation: ' , (ObjectMemory justInTimeCompilation storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10166
      nextPutLine:'ObjectMemory fullSingleStepSupport: ' , (ObjectMemory fullSingleStepSupport storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10167
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10168
    HistoryManager notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10169
        HistoryManager isActive ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10170
            s nextPutLine:'HistoryManager notNil ifTrue:[HistoryManager activate].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10171
            s nextPutLine:'HistoryManager notNil ifTrue:[HistoryManager fullHistoryUpdate:' , HistoryManager fullHistoryUpdate storeString , '].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10172
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10173
            s nextPutLine:'HistoryManager notNil ifTrue:[HistoryManager deactivate].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10174
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10175
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10176
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10177
    ObjectFileLoader notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10178
        s nextPutLine:'ObjectFileLoader searchedLibraries: ' , (ObjectFileLoader searchedLibraries storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10179
        s nextPutLine:'ObjectFileLoader libPath: ' , (ObjectFileLoader libPath storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10180
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10181
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10182
    s nextPutLine:'Class catchMethodRedefinitions: ' , (Class catchMethodRedefinitions storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10183
    s nextPutLine:'ClassCategoryReader sourceMode: ' , (ClassCategoryReader sourceMode storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10184
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10185
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10186
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10187
    s nextPutLine:'"/ Info & Debug Messages:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10188
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10189
    s nextPutLine:'ObjectMemory infoPrinting: ' , (ObjectMemory infoPrinting storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10190
      nextPutLine:'ObjectMemory debugPrinting: ' , (ObjectMemory debugPrinting storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10191
      nextPutLine:'Object infoPrinting: ' , (Object infoPrinting storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10192
      nextPutLine:'DeviceWorkstation errorPrinting: ' , (DeviceWorkstation errorPrinting storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10193
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10194
    FlyByHelp isActive ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10195
        s nextPutLine:'FlyByHelp start.'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10196
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10197
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10198
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10199
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10200
    s nextPutLine:'"/ Edit settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10201
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10202
    "/ s nextPutLine:'EditTextView st80Mode: ' , (EditTextView st80Mode storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10203
    s nextPutLine:'TextView st80SelectMode: ' , (TextView st80SelectMode storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10204
    s nextPutLine:'UserPreferences current syntaxColoring: ' , (currentUserPrefs syntaxColoring storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10205
    (ListView userDefaultTabPositions = ListView tab4Positions) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10206
        s nextPutLine:'ListView userDefaultTabPositions:(ListView tab4Positions).'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10207
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10208
        s nextPutLine:'ListView userDefaultTabPositions:(ListView tab8Positions).'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10209
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10210
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10211
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10212
    s nextPutLine:'"/ User preference values:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10213
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10214
    currentUserPrefs keysAndValuesDo:[:k :v |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10215
        (UserPreferences includesSelector:(k , ':') asSymbol) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10216
            s nextPutLine:'UserPreferences current ' , k , ':' , v storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10217
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10218
            s nextPutLine:'UserPreferences current at:' , k storeString , ' put:' , v storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10219
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10220
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10221
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10222
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10223
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10224
    s nextPutLine:'"/ Misc settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10225
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10226
    s nextPutLine:'Class keepMethodHistory: ' , (Class methodHistory notNil storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10227
      nextPutLine:'Smalltalk logDoits: ' , (Smalltalk logDoits storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10228
      nextPutLine:'Autoload compileLazy: ' , (Autoload compileLazy storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10229
      nextPutLine:'Smalltalk loadBinaries: ' , (Smalltalk loadBinaries storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10230
      nextPutLine:'StandardSystemView includeHostNameInLabel: ' , (StandardSystemView includeHostNameInLabel storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10231
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10232
      "/ claus - I dont think its a good idea to save those ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10233
      nextPutLine:'"/ Class updateChanges: ' , (Class updatingChanges storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10234
      nextPutLine:'"/ ObjectMemory nameForChanges: ' , (ObjectMemory nameForChanges storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10235
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10236
      nextPutLine:'StandardSystemView returnFocusWhenClosingModalBoxes: ' , (StandardSystemView returnFocusWhenClosingModalBoxes storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10237
      nextPutLine:'StandardSystemView takeFocusWhenMapped: ' , (StandardSystemView takeFocusWhenMapped storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10238
      nextPutLine:'Display notNil ifTrue:[';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10239
      nextPutLine:' Display activateOnClick: ' , ((screen activateOnClick:nil) storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10240
      nextPutLine:'].';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10241
      nextPutLine:'MenuView showAcceleratorKeys: ' , (MenuView showAcceleratorKeys storeString) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10242
      nextPutLine:'Class tryLocalSourceFirst: ' , (Class tryLocalSourceFirst storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10243
    (Exception emergencyHandler == AbstractLauncherApplication notifyingEmergencyHandler) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10244
        s nextPutLine:'Exception emergencyHandler:(AbstractLauncherApplication notifyingEmergencyHandler).'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10245
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10246
    Processor isTimeSlicing ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10247
        s nextPutLine:'Processor startTimeSlicing.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10248
        s nextPutLine:('Processor supportDynamicPriorities:' , (Processor supportDynamicPriorities ? false) storeString , '.').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10249
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10250
        s nextPutLine:'Processor stopTimeSlicing.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10251
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10252
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10253
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10254
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10255
    s nextPutLine:'"/ Printer settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10256
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10257
    s nextPutLine:'Printer := ' , (Printer name) , '.';
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10258
      nextPutLine:'Printer printCommand: ' , (Printer printCommand storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10259
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10260
    Printer supportsPageSizes ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10261
        s nextPutLine:'Printer pageFormat: ' , (Printer pageFormat storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10262
        s nextPutLine:'Printer landscape: ' , (Printer landscape storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10263
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10264
    Printer supportsMargins ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10265
        s nextPutLine:'Printer topMargin: ' , (Printer topMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10266
        s nextPutLine:'Printer leftMargin: ' , (Printer leftMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10267
        s nextPutLine:'Printer rightMargin: ' , (Printer rightMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10268
        s nextPutLine:'Printer bottomMargin: ' , (Printer bottomMargin storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10269
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10270
    Printer supportsPostscript ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10271
        s nextPutLine:'Printer supportsColor: ' , (Printer supportsColor storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10272
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10273
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10274
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10275
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10276
    s nextPutLine:'"/ Font settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10277
    s nextPutLine:'"/ (only restored, if image is restarted on the same display)'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10278
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10279
    s nextPutLine:'Display notNil ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10280
    s nextPutLine:' Display displayName = ' , (screen displayName storeString) , ' ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10281
    s nextPutLine:'  View defaultFont: ' , (View defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10282
    s nextPutLine:'  Label defaultFont: ' , (Label defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10283
    s nextPutLine:'  Button defaultFont: ' , (Button defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10284
    s nextPutLine:'  Toggle defaultFont: ' , (Toggle defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10285
    s nextPutLine:'  SelectionInListView defaultFont: ' , (SelectionInListView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10286
    s nextPutLine:'  MenuView defaultFont: ' , (MenuView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10287
    s nextPutLine:'  PullDownMenu defaultFont: ' , (PullDownMenu defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10288
    s nextPutLine:'  TextView defaultFont: ' , (TextView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10289
    s nextPutLine:'  EditTextView defaultFont: ' , (EditTextView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10290
    s nextPutLine:'  CodeView defaultFont: ' , (CodeView defaultFont storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10291
    s nextPutLine:' ].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10292
    s nextPutLine:'].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10293
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10294
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10295
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10296
    s nextPutLine:'"/ Language setting:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10297
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10298
    s nextPutLine:'Smalltalk language: ' , (Smalltalk language storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10299
    s nextPutLine:'Smalltalk languageTerritory: ' , (Smalltalk languageTerritory storeString) , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10300
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10301
    s cr.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10302
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10303
    s nextPutLine:'"/ SourceCodeManager settings:'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10304
    s nextPutLine:'"/ (only restored, if image is restarted on the same host)'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10305
    s nextPutLine:'"/'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10306
    s nextPutLine:'OperatingSystem getHostName = ' , (OperatingSystem getHostName storeString) , ' ifTrue:['.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10307
    s nextPutLine:'  Class tryLocalSourceFirst:' , Class tryLocalSourceFirst storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10308
    (Smalltalk at:#SourceCodeManager) == CVSSourceCodeManager ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10309
    s nextPutLine:'  Smalltalk at:#SourceCodeManager put: CVSSourceCodeManager.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10310
    s nextPutLine:'  AbstractSourceCodeManager cacheDirectoryName:' , AbstractSourceCodeManager cacheDirectoryName storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10311
    s nextPutLine:'  CVSSourceCodeManager cvsBinDirectory:' , CVSSourceCodeManager cvsBinDirectory storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10312
    s nextPutLine:'  CVSSourceCodeManager repositoryNamesPerModule:' , CVSSourceCodeManager repositoryNamesPerModule storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10313
    s nextPutLine:'  CVSSourceCodeManager initializeForRepository:' , CVSSourceCodeManager repositoryName storeString , '.'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10314
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10315
    s nextPutLine:'].'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10316
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10317
    s close.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10318
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10319
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10320
     Transcript topView application saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10321
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10322
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10323
    "Modified: / 6.1.1999 / 14:24:16 / cg"
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10324
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10325
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10326
!AbstractLauncherApplication::StyleSettingsAppl class methodsFor:'defaults'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10327
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10328
standardStyles
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10329
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10330
    ^  #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10331
        'decWindows'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10332
        'iris' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10333
        'motif' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10334
        'mswindows95' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10335
        'next' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10336
        'normal'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10337
        'os2' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10338
        'st80' 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10339
       )
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10340
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10341
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10342
!AbstractLauncherApplication::StyleSettingsAppl class methodsFor:'interface specs'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10343
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10344
windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10345
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10346
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10347
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10348
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10349
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10350
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10351
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10352
     UIPainter new openOnClass:AbstractLauncherApplication::StyleSettingsAppl andSelector:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10353
     AbstractLauncherApplication::StyleSettingsAppl new openInterface:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10354
     AbstractLauncherApplication::StyleSettingsAppl open
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10355
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10356
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10357
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10358
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10359
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10360
     #(#FullSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10361
        #name: #windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10362
        #window: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10363
       #(#WindowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10364
          #label: 'Style Selection'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10365
          #name: 'Style Selection'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10366
          #min: #(#Point 10 10)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10367
          #max: #(#Point 1024 768)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10368
          #bounds: #(#Rectangle 12 22 487 553)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10369
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10370
        #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10371
       #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10372
          #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10373
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10374
              #label: 'Label'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10375
              #name: 'Label1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10376
              #layout: #(#LayoutFrame 0 0.0 -71 1 0 1.0 -34 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10377
              #style: #(#FontDescription #helvetica #bold #roman 12)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10378
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10379
              #labelChannel: #infoLabelHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10380
              #resizeForLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10381
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10382
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10383
           #(#HorizontalPanelViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10384
              #name: 'HorizontalPanel1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10385
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10386
              #horizontalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10387
              #verticalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10388
              #horizontalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10389
              #verticalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10390
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10391
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10392
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10393
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10394
                    #label: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10395
                    #name: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10396
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10397
                    #model: #saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10398
                    #enableChannel: #modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10399
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10400
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10401
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10402
                    #label: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10403
                    #name: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10404
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10405
                    #model: #doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10406
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10407
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10408
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10409
                    #label: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10410
                    #name: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10411
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10412
                    #model: #help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10413
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10414
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10415
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10416
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10417
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10418
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10419
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10420
              #label: 'NoticeText'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10421
              #name: 'Text'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10422
              #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 160 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10423
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10424
              #labelChannel: #noticeLabelHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10425
              #resizeForLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10426
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10427
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10428
           #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10429
              #label: 'standard styles only'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10430
              #name: 'CheckBox1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10431
              #layout: #(#LayoutFrame 0 0.0 160 0 0 1.0 182 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10432
              #model: #showStandardStylesOnly
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10433
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10434
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10435
           #(#SequenceViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10436
              #name: 'StyleList'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10437
              #layout: #(#LayoutFrame 0 0.0 182 0 0 1.0 -74 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10438
              #model: #selectedStyle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10439
              #hasHorizontalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10440
              #hasVerticalScrollBar: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10441
              #useIndex: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10442
              #sequenceList: #styleList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10443
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10444
           )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10445
         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10446
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10447
      )
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10448
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10449
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10450
!AbstractLauncherApplication::StyleSettingsAppl methodsFor:'actions'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10451
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10452
doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10453
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10454
    self isPartOfSettinsDialog ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10455
        self loadRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10456
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10457
    self closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10458
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10459
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10460
evaluateModified
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10461
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10462
    self modifiedChannel value:(self hasUnsavedChanges).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10463
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10464
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10465
help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10466
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10467
    self warn:'no help available here'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10468
"/    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/keyboardSetting.html'].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10469
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10470
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10471
loadRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10472
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10473
    self modifiedChannel value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10474
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10475
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10476
saveRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10477
    | result |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10478
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10479
    (self hasUnsavedChanges) ifTrue:[
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10480
        result := self confirmWithCancel:(resources string:'Save changed Style Settings ?'). 
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10481
        result isNil ifTrue:[ ^ false].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10482
        result ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10483
            self saveSettings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10484
        ] 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10485
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10486
    ^ true
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10487
!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10488
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10489
saveSettings
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10490
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10491
    | newStyle master requestor|
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10492
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10493
    newStyle := self selectedStyle value.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10494
    master := self masterApplication.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10495
    master notNil ifTrue:[
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10496
        requestor := master requestor.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10497
    ].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10498
    self hasUnsavedChanges ifTrue:[
4245
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10499
        | launcher |
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10500
        requestor notNil ifTrue:[
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10501
            launcher := requestor.
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10502
        ] ifFalse:[
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10503
            | transcript |    
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10504
            transcript := Transcript current.
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10505
            transcript notNil ifTrue:[
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10506
                | app|
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10507
                app := transcript topView application.
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10508
                (app respondsTo:#reopenLauncher) ifTrue:[
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10509
                    launcher := app.
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10510
                ].
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10511
            ].
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10512
        ].
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10513
        self withWaitCursorDo:[
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10514
            Transcript showCR:'change style to ' , newStyle , ' ...'.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10515
            View defaultStyle:newStyle asSymbol.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10516
        ].
4245
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10517
        launcher notNil ifTrue:[
fe5535df5fb3 *** empty log message ***
penk
parents: 4244
diff changeset
 10518
            launcher reopenLauncher.
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10519
        ].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10520
        DebugView newDebugger.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10521
        self modifiedChannel value:false.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10522
    ].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10523
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10524
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10525
!AbstractLauncherApplication::StyleSettingsAppl methodsFor:'aspects'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10526
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10527
infoLabelHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10528
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10529
    infoLabelHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10530
        infoLabelHolder := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10531
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10532
    ^ infoLabelHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10533
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10534
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10535
modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10536
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10537
    modifiedChannel isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10538
        modifiedChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10539
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10540
    ^ modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10541
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10542
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10543
noticeLabelHolder
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10544
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10545
    noticeLabelHolder isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10546
        noticeLabelHolder := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10547
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10548
    ^ noticeLabelHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10549
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10550
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10551
selectedStyle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10552
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10553
    selectedStyle isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10554
        selectedStyle := ValueHolder new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10555
        selectedStyle addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10556
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10557
    ^ selectedStyle.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10558
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10559
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10560
showStandardStylesOnly
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10561
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10562
    showStandardStylesOnly isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10563
        showStandardStylesOnly := true asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10564
        showStandardStylesOnly addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10565
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10566
    ^ showStandardStylesOnly.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10567
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10568
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10569
styleList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10570
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10571
    styleList isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10572
        styleList := List new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10573
        styleList addDependent:self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10574
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10575
    ^ styleList.
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10576
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10577
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10578
!AbstractLauncherApplication::StyleSettingsAppl methodsFor:'change & update'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10579
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10580
changeInfoLabel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10581
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10582
    |nm sheet comment|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10583
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10584
    comment := ''.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10585
    nm := self selectedStyle value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10586
    nm notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10587
        sheet := ViewStyle fromFile:(nm , '.style').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10588
        comment := (sheet at:#comment ifAbsent:'') withoutSeparators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10589
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10590
    comment := comment withCRs asStringCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10591
    comment size == 1 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10592
        comment := comment first
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10593
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10594
    self infoLabelHolder value:comment
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10595
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10596
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10597
update:something with:aParameter from:changedObject
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10598
    "Invoked when an object that I depend upon sends a change notification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10599
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10600
    "stub code automatically generated - please change as required"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10601
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10602
    changedObject == self showStandardStylesOnly ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10603
        self updateList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10604
        ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10605
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10606
    changedObject == self selectedStyle ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10607
        self changeInfoLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10608
        self evaluateModified.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10609
        ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10610
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10611
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10612
    super update:something with:aParameter from:changedObject
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10613
!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10614
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10615
updateList
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10616
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10617
    |listOfStyles lastSelection|
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10618
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10619
    lastSelection := self selectedStyle value.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10620
    listOfStyles := styleDirectoryContents select:[:aFileName | aFileName asFilename hasSuffix:'style'].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10621
    listOfStyles := listOfStyles collect:[:aFileName | aFileName asFilename withoutSuffix name].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10622
    Filename isCaseSensitive ifFalse:[
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10623
        listOfStyles := listOfStyles collect:[:aStyleName | aStyleName asLowercase].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10624
    ].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10625
    listOfStyles remove:'generic' ifAbsent:nil; remove:'mswindows3' ifAbsent:nil.
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10626
    self showStandardStylesOnly value ifTrue:[
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10627
        listOfStyles := listOfStyles select:[:aStyleName | self class standardStyles includes:aStyleName].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10628
    ].
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10629
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10630
    listOfStyles sort.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10631
    self styleList contents:listOfStyles.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10632
    self selectedStyle value:lastSelection.
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10633
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10634
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10635
!AbstractLauncherApplication::StyleSettingsAppl methodsFor:'initialization & release'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10636
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10637
closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10638
    "This is a hook method generated by the Browser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10639
     It will be invoked when your app/dialog-window is really closed.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10640
     See also #closeDownViews, which is invoked before and may suppress the close
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10641
     or ask the user for confirmation."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10642
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10643
    "/ change the code below as required ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10644
    "/ This should cleanup any leftover resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10645
    "/ (for example, temporary files)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10646
    "/ super closeRequest will initiate the closeDown
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10647
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10648
    "/ add your code here
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10649
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10650
    "/ do not remove the one below ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10651
    ^ super closeDownViews
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10652
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10653
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10654
closeRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10655
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10656
    self saveRequest ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10657
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10658
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10659
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10660
    ^ super closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10661
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10662
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10663
initialize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10664
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10665
    |someRsrcFile resourceDir|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10666
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10667
    resources := self class owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10668
    someRsrcFile := Smalltalk getSystemFileName:('resources' asFilename constructString:'normal.style').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10669
    someRsrcFile isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10670
        someRsrcFile := Smalltalk getResourceFileName:'normal.style' forPackage:'stx:libview'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10671
        someRsrcFile isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10672
            someRsrcFile := Smalltalk getResourceFileName:'styles/normal.style' forPackage:'stx:libview'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10673
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10674
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10675
    someRsrcFile notNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10676
        resourceDir := someRsrcFile asFilename directoryName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10677
    ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10678
        resourceDir := Smalltalk getSystemFileName:'resources'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10679
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10680
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10681
    resourceDir isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10682
        self warn:'no styles found (missing ''resources'' directory)'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10683
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10684
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10685
    styleDirectoryContents := resourceDir asFilename directoryContents.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10686
    self updateList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10687
    (self class standardStyles includes:View defaultStyle) ifFalse:[
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10688
        self showStandardStylesOnly value:false
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10689
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10690
    self selectedStyle value:(View defaultStyle).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10691
    self noticeLabelHolder value:(resources at:'STYLE_MSG' default:'Select a Style') withCRs.    
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10692
    super initialize
4240
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10693
! !
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10694
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10695
!AbstractLauncherApplication::StyleSettingsAppl methodsFor:'queries'!
f196089fe934 next stage for settings
penk
parents: 4231
diff changeset
 10696
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10697
hasUnsavedChanges
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10698
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10699
    ^  (self selectedStyle value ~= View defaultStyle)
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10700
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10701
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10702
!AbstractLauncherApplication::SystemMessageSettingsAppl class methodsFor:'interface specs'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10703
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10704
windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10705
    "This resource specification was automatically generated
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10706
     by the UIPainter of ST/X."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10707
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10708
    "Do not manually edit this!! If it is corrupted,
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10709
     the UIPainter may not be able to read the specification."
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10710
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10711
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10712
     UIPainter new openOnClass:AbstractLauncherApplication::SystemMessageSettingsAppl andSelector:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10713
     AbstractLauncherApplication::SystemMessageSettingsAppl new openInterface:#windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10714
     AbstractLauncherApplication::SystemMessageSettingsAppl open
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10715
    "
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10716
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10717
    <resource: #canvas>
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10718
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10719
    ^ 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10720
     #(#FullSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10721
        #name: #windowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10722
        #window: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10723
       #(#WindowSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10724
          #label: 'Messages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10725
          #name: 'Messages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10726
          #min: #(#Point 10 10)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10727
          #max: #(#Point 1024 768)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10728
          #bounds: #(#Rectangle 24 22 499 293)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10729
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10730
        #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10731
       #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10732
          #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10733
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10734
              #label: 'VM Info Messages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10735
              #name: 'VMInfoMessages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10736
              #layout: #(#LayoutFrame 5 0 5 0 -5 1 30 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10737
              #model: #vmInfo
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10738
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10739
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10740
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10741
              #label: 'VM Error Messages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10742
              #name: 'VMErrorMessages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10743
              #layout: #(#LayoutFrame 5 0 40 0 -5 1 65 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10744
              #model: #vmErrors
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10745
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10746
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10747
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10748
              #name: 'Separator2'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10749
              #layout: #(#LayoutFrame 0 0.0 70 0 0 1 73 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10750
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10751
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10752
              #label: 'Display Error Messages (Xlib, Xtlib, WinAPI ...)'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10753
              #name: 'DisplayErrorMessages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10754
              #layout: #(#LayoutFrame 5 0 80 0 -5 1 105 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10755
              #model: #displayErrors
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10756
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10757
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10758
           #(#CheckBoxSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10759
              #label: 'Other Info Messages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10760
              #name: 'OtherInfoMessages'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10761
              #layout: #(#LayoutFrame 4 0 115 0 -5 1 135 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10762
              #model: #classInfos
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10763
              #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10764
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10765
           #(#DividerSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10766
              #name: 'Separator3'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10767
              #layout: #(#LayoutFrame 2 0.0 144 0 2 1 147 0)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10768
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10769
           #(#HorizontalPanelViewSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10770
              #name: 'HorizontalPanel1'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10771
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10772
              #horizontalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10773
              #verticalLayout: #center
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10774
              #horizontalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10775
              #verticalSpace: 3
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10776
              #component: 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10777
             #(#SpecCollection
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10778
                #collection: #(
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10779
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10780
                    #label: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10781
                    #name: 'OK'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10782
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10783
                    #model: #saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10784
                    #enableChannel: #modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10785
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10786
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10787
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10788
                    #label: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10789
                    #name: 'Cancel'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10790
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10791
                    #model: #doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10792
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10793
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10794
                 #(#ActionButtonSpec
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10795
                    #label: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10796
                    #name: 'Help'
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10797
                    #translateLabel: true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10798
                    #model: #help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10799
                    #extent: #(#Point 125 22)
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10800
                  )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10801
                 )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10802
               
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10803
              )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10804
            )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10805
           )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10806
         
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10807
        )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10808
      )
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10809
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10810
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10811
!AbstractLauncherApplication::SystemMessageSettingsAppl methodsFor:'actions'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10812
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10813
doCancel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10814
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10815
    self isPartOfSettinsDialog ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10816
        self loadRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10817
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10818
    self closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10819
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10820
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10821
evaluateModified
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10822
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10823
    self modifiedChannel value:(self hasUnsavedChanges).
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10824
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10825
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10826
help
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10827
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10828
    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/messageSettings.html'].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10829
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10830
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10831
loadRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10832
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10833
    self vmInfo value:ObjectMemory infoPrinting.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10834
    self vmErrors value:ObjectMemory debugPrinting.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10835
    self classInfos value:Object infoPrinting.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10836
    self displayErrors value:DeviceWorkstation errorPrinting.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10837
    self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10838
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10839
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10840
saveRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10841
    | result |
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10842
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10843
    (self hasUnsavedChanges) ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10844
        result := self confirmWithCancel:(resources string:'Save changed System Massage Settings ?'). 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10845
        result isNil ifTrue:[ ^ false].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10846
        result ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10847
            self saveSettings.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10848
        ] 
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10849
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10850
    ^ true
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10851
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10852
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10853
saveSettings
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10854
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10855
    ObjectMemory infoPrinting:self vmInfo value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10856
    ObjectMemory debugPrinting:self vmErrors value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10857
    Object infoPrinting:self classInfos value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10858
    DeviceWorkstation errorPrinting:self displayErrors value.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10859
    self modifiedChannel value:false.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10860
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10861
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10862
!AbstractLauncherApplication::SystemMessageSettingsAppl methodsFor:'aspects'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10863
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10864
classInfos
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10865
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10866
    classInfos isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10867
        classInfos := Object infoPrinting asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10868
        classInfos onChangeSend:#evaluateModified to:self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10869
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10870
    ^ classInfos.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10871
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10872
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10873
displayErrors
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10874
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10875
    displayErrors isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10876
        displayErrors := DeviceWorkstation errorPrinting asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10877
        displayErrors onChangeSend:#evaluateModified to:self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10878
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10879
    ^ displayErrors.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10880
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10881
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10882
modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10883
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10884
    modifiedChannel isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10885
        modifiedChannel := false asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10886
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10887
    ^ modifiedChannel
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10888
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10889
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10890
vmErrors
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10891
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10892
    vmErrors isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10893
        vmErrors := ObjectMemory debugPrinting asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10894
        vmErrors onChangeSend:#evaluateModified to:self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10895
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10896
    ^ vmErrors.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10897
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10898
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10899
vmInfo
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10900
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10901
    vmInfo isNil ifTrue:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10902
        vmInfo := ObjectMemory infoPrinting asValue.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10903
        vmInfo onChangeSend:#evaluateModified to:self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10904
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10905
    ^ vmInfo.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10906
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10907
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10908
!AbstractLauncherApplication::SystemMessageSettingsAppl methodsFor:'initialization & release'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10909
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10910
closeRequest
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10911
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10912
    self saveRequest ifFalse:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10913
        ^ self
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10914
    ].
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10915
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10916
    ^ super closeRequest.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10917
!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10918
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10919
initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10920
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10921
    resources := self class owningClass classResources.
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10922
    super initialize
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10923
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10924
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10925
!AbstractLauncherApplication::SystemMessageSettingsAppl methodsFor:'queries'!
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10926
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10927
hasUnsavedChanges
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10928
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10929
    ^(self vmInfo value ~= ObjectMemory infoPrinting  or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10930
      self vmErrors value ~= ObjectMemory debugPrinting or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10931
      self classInfos value ~= Object infoPrinting or:[
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10932
      self displayErrors value ~= DeviceWorkstation errorPrinting ]]])
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10933
! !
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 10934
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10935
!AbstractLauncherApplication::ToolsSettingsAppl class methodsFor:'interface specs'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 10936
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10937
windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10938
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10939
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10940
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10941
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10942
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10943
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10944
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10945
     UIPainter new openOnClass:AbstractLauncherApplication::ToolsSettingsAppl andSelector:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10946
     AbstractLauncherApplication::ToolsSettingsAppl new openInterface:#windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10947
     AbstractLauncherApplication::ToolsSettingsAppl open
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10948
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10949
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10950
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10951
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10952
    ^ 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10953
     #(#FullSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10954
        #name: #windowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10955
        #window: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10956
       #(#WindowSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10957
          #label: 'AbstractLauncherApplication::LauncherDialogs::ToolsSettingsAppl'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10958
          #name: 'AbstractLauncherApplication::LauncherDialogs::ToolsSettingsAppl'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10959
          #min: #(#Point 10 10)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10960
          #max: #(#Point 1024 768)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10961
          #bounds: #(#Rectangle 16 42 491 313)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10962
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10963
        #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10964
       #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10965
          #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10966
           #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10967
              #label: 'Use the New Changes Browser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10968
              #name: 'ChangesBrowser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10969
              #layout: #(#LayoutFrame 5 0 5 0 250 0 30 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10970
              #model: #useNewChangesBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10971
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10972
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10973
           #(#DividerSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10974
              #name: 'Separator1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10975
              #layout: #(#LayoutFrame 0 0.0 35 0 0 1 38 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10976
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10977
           #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10978
              #label: 'Use the New System Browser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10979
              #name: 'NewSystemBrowser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10980
              #layout: #(#LayoutFrame 250 0 5 0 0 1 30 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10981
              #model: #useNewSystemBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10982
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10983
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10984
           #(#DividerSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10985
              #name: 'Separator2'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10986
              #layout: #(#LayoutFrame 0 0.0 70 0 0 1 73 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10987
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10988
           #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10989
              #label: 'Use the New VersionDiff Browser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10990
              #name: 'VersionDiffBrowser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10991
              #layout: #(#LayoutFrame 5 0 40 0 250 0 65 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10992
              #model: #useNewVersionDiffBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10993
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10994
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10995
           #(#DividerSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10996
              #name: 'Separator3'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10997
              #layout: #(#LayoutFrame 0 0.0 105 0 0 1 108 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10998
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 10999
           #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11000
              #label: 'Use the New File Browser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11001
              #name: 'NewFileBrowser'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11002
              #layout: #(#LayoutFrame 250 0 40 0 0 1 65 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11003
              #model: #useNewFileBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11004
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11005
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11006
           #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11007
              #label: 'Use Hierarchical Inspector'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11008
              #name: 'HierarchicalInspector'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11009
              #layout: #(#LayoutFrame 5 0 75 0 250 0 100 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11010
              #model: #useNewInspector
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11011
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11012
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11013
           #(#CheckBoxSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11014
              #label: 'Show Clock in Launcher'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11015
              #name: 'Clock'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11016
              #layout: #(#LayoutFrame 250 0 75 0 0 1 100 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11017
              #model: #showClockInLauncher
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11018
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11019
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11020
           #(#LabelSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11021
              #label: '''Transcripts Buffer Size:'''
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11022
              #name: 'Label1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11023
              #layout: #(#LayoutFrame 9 0 133 0 154 0 155 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11024
              #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11025
              #adjust: #left
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11026
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11027
           #(#InputFieldSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11028
              #name: 'Transcripts Buffer Size'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11029
              #layout: #(#LayoutFrame 159 0 133 0 214 0 155 0)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11030
              #model: #transcriptBufferSize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11031
              #type: #number
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11032
              #immediateAccept: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11033
              #acceptOnReturn: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11034
              #acceptOnTab: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11035
              #acceptOnLostFocus: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11036
              #acceptOnPointerLeave: false
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11037
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11038
           #(#HorizontalPanelViewSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11039
              #name: 'HorizontalPanel1'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11040
              #layout: #(#LayoutFrame 0 0.0 -34 1 0 1.0 0 1)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11041
              #horizontalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11042
              #verticalLayout: #center
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11043
              #horizontalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11044
              #verticalSpace: 3
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11045
              #component: 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11046
             #(#SpecCollection
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11047
                #collection: #(
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11048
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11049
                    #label: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11050
                    #name: 'OK'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11051
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11052
                    #model: #saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11053
                    #enableChannel: #modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11054
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11055
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11056
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11057
                    #label: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11058
                    #name: 'Cancel'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11059
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11060
                    #model: #doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11061
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11062
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11063
                 #(#ActionButtonSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11064
                    #label: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11065
                    #name: 'Help'
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11066
                    #translateLabel: true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11067
                    #model: #help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11068
                    #extent: #(#Point 125 22)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11069
                  )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11070
                 )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11071
               
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11072
              )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11073
            )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11074
           )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11075
         
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11076
        )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11077
      )
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11078
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11079
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11080
!AbstractLauncherApplication::ToolsSettingsAppl methodsFor:'actions'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11081
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11082
doCancel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11083
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11084
    self isPartOfSettinsDialog ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11085
        self loadRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11086
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11087
    self closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11088
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11089
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11090
evaluateModified
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11091
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11092
    self modifiedChannel value:(self hasUnsavedChanges).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11093
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11094
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11095
help
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11096
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11097
    self withWaitCursorDo:[HTMLDocumentView openFullOnHelpFile:'Launcher/toolSettings.html'].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11098
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11099
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11100
loadRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11101
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11102
    self showClockInLauncher value:currentUserPrefs showClockInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11103
    self transcriptBufferSize value:Transcript current lineLimit.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11104
    self useNewChangesBrowser value:currentUserPrefs useNewChangesBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11105
    self useNewFileBrowser value:currentUserPrefs useNewFileBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11106
    self useNewInspector value:currentUserPrefs useNewInspector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11107
    self useNewSystemBrowser value:currentUserPrefs useNewSystemBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11108
    self useNewVersionDiffBrowser value:currentUserPrefs useNewVersionDiffBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11109
    self modifiedChannel value:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11110
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11111
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11112
saveRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11113
    | result |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11114
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11115
    (self hasUnsavedChanges) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11116
        result := self confirmWithCancel:(resources string:'Save changed Tool Settings ?'). 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11117
        result isNil ifTrue:[ ^ false].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11118
        result ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11119
            self saveSettings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11120
        ] 
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11121
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11122
    ^ true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11123
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11124
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11125
saveSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11126
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11127
    | showClock launcher |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11128
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11129
    currentUserPrefs useNewInspector:self useNewInspector value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11130
    currentUserPrefs useNewChangesBrowser:self useNewChangesBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11131
    currentUserPrefs useNewSystemBrowser:self useNewSystemBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11132
    currentUserPrefs useNewVersionDiffBrowser:self useNewVersionDiffBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11133
    currentUserPrefs useNewFileBrowser:self useNewFileBrowser value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11134
    (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11135
        self useNewFileBrowser value ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11136
            FileBrowserV2 installInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11137
        ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11138
            FileBrowserV2 isLoaded ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11139
                FileBrowserV2 removeFromLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11140
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11141
        ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11142
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11143
    showClock := self showClockInLauncher value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11144
    currentUserPrefs showClockInLauncher ~= showClock ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11145
        currentUserPrefs showClockInLauncher:showClock.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11146
        launcher := Transcript application.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11147
        (launcher isKindOf:ToolApplicationModel) ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11148
            showClock ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11149
                launcher startClock
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11150
            ] ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11151
                launcher stopClock
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11152
            ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11153
        ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11154
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11155
    Inspector := currentUserPrefs inspectorClassSetting.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11156
    Transcript current lineLimit:self transcriptBufferSize value.
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 11157
    self modifiedChannel value:false.
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11158
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11159
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11160
!AbstractLauncherApplication::ToolsSettingsAppl methodsFor:'aspects'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11161
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11162
modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11163
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11164
    modifiedChannel isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11165
        modifiedChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11166
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11167
    ^ modifiedChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11168
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11169
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11170
showClockInLauncher
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11171
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11172
    showClockInLauncher isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11173
        showClockInLauncher := currentUserPrefs showClockInLauncher asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11174
        showClockInLauncher onChangeSend:#evaluateModified to:self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11175
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11176
    ^ showClockInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11177
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11178
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11179
transcriptBufferSize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11180
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11181
    transcriptBufferSize isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11182
        transcriptBufferSize := Transcript current lineLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11183
        transcriptBufferSize onChangeSend:#evaluateModified to:self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11184
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11185
    ^ transcriptBufferSize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11186
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11187
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11188
useNewChangesBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11189
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11190
    useNewChangesBrowser isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11191
        useNewChangesBrowser := currentUserPrefs useNewChangesBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11192
        useNewChangesBrowser onChangeSend:#evaluateModified to:self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11193
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11194
    ^ useNewChangesBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11195
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11196
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11197
useNewFileBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11198
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11199
    useNewFileBrowser isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11200
        useNewFileBrowser := currentUserPrefs useNewFileBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11201
        useNewFileBrowser onChangeSend:#evaluateModified to:self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11202
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11203
    ^ useNewFileBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11204
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11205
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11206
useNewInspector
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11207
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11208
    useNewInspector isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11209
        useNewInspector := currentUserPrefs useNewInspector asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11210
        useNewInspector onChangeSend:#evaluateModified to:self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11211
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11212
    ^ useNewInspector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11213
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11214
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11215
useNewSystemBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11216
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11217
    useNewSystemBrowser isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11218
        useNewSystemBrowser := currentUserPrefs useNewSystemBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11219
        useNewSystemBrowser onChangeSend:#evaluateModified to:self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11220
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11221
    ^ useNewSystemBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11222
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11223
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11224
useNewVersionDiffBrowser
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11225
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11226
    useNewVersionDiffBrowser isNil ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11227
        useNewVersionDiffBrowser := currentUserPrefs useNewVersionDiffBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11228
        useNewVersionDiffBrowser onChangeSend:#evaluateModified to:self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11229
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11230
    ^ useNewVersionDiffBrowser.
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11231
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11232
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11233
!AbstractLauncherApplication::ToolsSettingsAppl methodsFor:'initialization & release'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11234
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11235
closeRequest
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11236
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11237
    self saveRequest ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11238
        ^ self
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11239
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11240
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11241
    ^ super closeRequest.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11242
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11243
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11244
initialize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11245
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 11246
    resources := self class owningClass classResources.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11247
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11248
    super initialize
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11249
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11250
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11251
!AbstractLauncherApplication::ToolsSettingsAppl methodsFor:'queries'!
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11252
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11253
hasUnsavedChanges
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11254
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11255
    ^ ((self useNewInspector value       ~= currentUserPrefs useNewInspector)       or:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11256
       (self useNewChangesBrowser value  ~= currentUserPrefs useNewChangesBrowser)  or:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11257
       (self useNewSystemBrowser value   ~= currentUserPrefs useNewSystemBrowser)   or:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11258
       (self showClockInLauncher value   ~= currentUserPrefs showClockInLauncher)   or:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11259
       (self useNewVersionDiffBrowser value ~= currentUserPrefs useNewVersionDiffBrowser) or:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11260
       (self useNewFileBrowser value     ~= currentUserPrefs useNewFileBrowser) or:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
 11261
       (self transcriptBufferSize value  ~= Transcript current lineLimit)]]]]]])
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11262
! !
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11263
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
 11264
!AbstractLauncherApplication class methodsFor:'documentation'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
 11265
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
 11266
version
4258
20a0db92f04a new Settings next stage
penk
parents: 4245
diff changeset
 11267
    ^ '$Header: /cvs/stx/stx/libtool/AbstractLauncherApplication.st,v 1.232 2002-11-15 16:23:26 penk Exp $'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
 11268
! !
4224
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11269
6a5892a6c179 first new settings application startup instable in work by penk
penk
parents: 4199
diff changeset
 11270
AbstractLauncherApplication::SettingsDialog initialize!