AbstractLauncherApplication.st
author Claus Gittinger <cg@exept.de>
Tue, 09 Oct 2018 12:18:10 +0200
changeset 18448 0fbeddf2a269
parent 18406 b29e42efb930
child 18514 56daafb1974c
permissions -rw-r--r--
#FEATURE by cg class: AbstractLauncherApplication changed: #findApplicationClass:nameSpace:
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
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
     3
              All Rights Reserved
2195
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
"
2689
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    12
"{ Package: 'stx:libtool' }"
602cbcd0feb3 Fix comment on oldSpace compress limit
Stefan Vogel <sv@exept.de>
parents: 2621
diff changeset
    13
15236
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
    14
"{ NameSpace: Smalltalk }"
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
    15
7455
9003f35c3458 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7439
diff changeset
    16
ToolApplicationModel subclass:#AbstractLauncherApplication
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    17
	instanceVariableNames:'transcript'
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    18
	classVariableNames:'NotifyingEmergencyHandler OpenLaunchers RegisteredMenuHandlers
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
    19
		OpenSettingsDialog SettingsList UserSettingsList
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
    20
		LastSettingsPageName'
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    21
	poolDictionaries:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    22
	category:'Interface-Smalltalk'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
Object subclass:#LauncherDialogs
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    26
	instanceVariableNames:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    27
	classVariableNames:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    28
	poolDictionaries:''
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
    29
	privateIn:AbstractLauncherApplication
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    32
ApplicationModel subclass:#PackageLoadDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    33
	instanceVariableNames:'hierarchicalListView packageIdByItem pathByItem packageDirPath
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    34
		packageIcon greyPackageIcon folderIcon greyFolderIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    35
		alreadyLoadedString applicationIcon greyApplicationIcon root
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    36
		itemsByPath getItemByPath myHierarchicalItemWithLabelAndIcon
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    37
		filterHolder masterRoot infoTextHolder loadButton
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
    38
		loadAndBrowseButton selectedPackageHolder monticelloRoot
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    39
		backgroundPackageFindProcess itemsMatchingFilter'
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    40
	classVariableNames:'PreviousPackageDialogItems PreviousPackageDialogExtent'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    41
	poolDictionaries:''
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    42
	privateIn:AbstractLauncherApplication
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    43
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
    44
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    45
HierarchicalItemWithLabelAndIcon subclass:#MyHierarchicalItem
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    46
	instanceVariableNames:'type info'
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    47
	classVariableNames:''
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    48
	poolDictionaries:''
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    49
	privateIn:AbstractLauncherApplication::PackageLoadDialog
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    50
!
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
    51
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    52
!AbstractLauncherApplication class methodsFor:'documentation'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    53
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    54
copyright
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    55
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    56
 COPYRIGHT (c) 1997 by eXept Software AG
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    57
              All Rights Reserved
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    58
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    59
 This software is furnished under a license and may be used
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    60
 only in accordance with the terms of that license and with the
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    61
 inclusion of the above copyright notice. This software may not
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    62
 be provided or otherwise made available to, or used by, any
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    63
 other person. No title to or ownership of the software is
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    64
 hereby transferred.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    65
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    66
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    67
!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    68
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    69
documentation
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    70
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    71
    This is an abstract class, providing mechanisms and common functionality
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    72
    for launcher-type applications. Subclasses may implement their GUI either
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    73
    with or without the UIPainter framework, and still use the common functions
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    74
    provided here.
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    75
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    76
    [author:]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    77
        Claus Gittinger, eXept Software AG
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    78
"
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    79
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    80
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
    81
! !
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
!AbstractLauncherApplication class methodsFor:'accessing'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    85
closeAllLaunchers
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    86
    "close all opened launchers"
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    87
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    88
    self openLaunchers copy do:[:eachLauncher |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
    89
        eachLauncher closeRequest
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    90
    ].
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    91
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    92
    "
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    93
     self closeAllLaunchers.
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    94
     NewLauncher open
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    95
    "
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    96
!
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
    97
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
    "return the launcher running on the current screen.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
     (for access via addMenu/ removeMenu)"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
    |currentScreen|
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
   104
    OpenLaunchers notEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   105
        currentScreen := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   106
        ^ OpenLaunchers detect:[:eachLauncher | eachLauncher graphicsDevice == currentScreen] ifNone:nil
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
    ^ nil.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
    "
2761
4e05f561e2db checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2760
diff changeset
   111
     NewLauncher current
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
   114
    "Modified: / 09-09-1996 / 22:41:36 / stefan"
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
   115
    "Modified: / 17-02-2017 / 08:26:01 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
openLaunchers
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
    "return all opened launchers"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   121
    OpenLaunchers isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   122
        OpenLaunchers := IdentitySet new
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   123
    ].
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
   124
    ^ OpenLaunchers
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
!AbstractLauncherApplication class methodsFor:'defaults'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
notifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
    "return a block (used as an emergency handler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
     for exceptions), which does errorNotification before going
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
     into the debugger."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
    "Remember the handlerBlock, to be able to determine if the current
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
     handler is the notifying one."
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
    NotifyingEmergencyHandler isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   138
        NotifyingEmergencyHandler := NoHandlerError notifyingEmergencyHandler
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
    ].
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
    ^ NotifyingEmergencyHandler
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
    "Created: 7.1.1997 / 22:18:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
    "Modified: 15.1.1997 / 21:15:38 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   146
!AbstractLauncherApplication class methodsFor:'image specs'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   147
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   148
communicationIcon
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   149
    "This resource specification was automatically generated
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   150
     by the ImageEditor of ST/X."
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   151
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   152
    "Do not manually edit this!! If it is corrupted,
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   153
     the ImageEditor may not be able to read the specification."
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   154
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   155
    "
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   156
     self communicationIcon inspect
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   157
     ImageEditor openOnClass:self andSelector:#communicationIcon
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   158
     Icon flushCachedIcons
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   159
    "
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   160
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   161
    <resource: #image>
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   162
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   163
    ^Icon
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   164
        constantNamed:'AbstractLauncherApplication communicationIcon'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   165
        ifAbsentPut:[(Depth4Image width:22 height:22) bits:(ByteArray fromPackedString:'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   166
@@W%@@@@@@A^T@@@V2/@@@@@CKJ5@@V?!!>T@@@A[=W9PV?!!<R5@@A[=W1KVR<.S@$@@IC28UJ];?IR- @@7"<%>6NW?2/C&Y%)$/><$3A0/J$A@C$IAL*Y3^
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   167
;B*QF:''F_,J)G*"R(#G;8W(Y*"$S,)J(G4.CN2&*U@.[$(G5_K1)82U!!@K\86O=[*&93!!DD@)KP7G?>+9T-JPP@@DC\H>$+,@P+%@@@@%@6K(''0@3,@@@@AE
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   168
E9H";@3,@@@@@L5Z$"+,3,@@@@@@19"Z)H3,@@@@@@@L%=)F%<@@@@@@@@B.]H@@@@@@@@@@@@18@@@@@@@b') colorMapFromArray:#[0 0 0 148 148 148 224 224 224 52 52 52 128 128 128 180 180 180 32 32 32 84 84 84 160 160 160 64 64 64 212 212 212 116 116 116 192 192 192 20 20 20 96 96 96 244 244 244] mask:((ImageMask width:22 height:22) bits:(ByteArray fromPackedString:'G@C O G0_0O8?8_<?(W<?8_<???<=:^<???<???<???<_??<O??<O??<B?=\@?<8@?=0@?? @??@@_>@@O @@G@@'); yourself); yourself]
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
   169
!
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
   170
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   171
cross2Icon
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   172
    "This resource specification was automatically generated
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   173
     by the ImageEditor of ST/X."
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   174
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   175
    "Do not manually edit this!! If it is corrupted,
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   176
     the ImageEditor may not be able to read the specification."
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   177
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   178
    "
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   179
     self cross2Icon inspect
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   180
     ImageEditor openOnClass:self andSelector:#cross2Icon
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   181
     Icon flushCachedIcons
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   182
    "
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   183
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   184
    <resource: #image>
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   185
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   186
    ^Icon
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   187
        constantNamed:'AbstractLauncherApplication cross2Icon'
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   188
        ifAbsentPut:[(Depth1Image width:32 height:32) bits:(ByteArray fromPackedString:'
9806
80452f6ab4f6 changed: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9805
diff changeset
   189
@@@@@@@F0@@@@H@@@@@@@@@@0@@@@H@@@@@@@@@N<@@@LH0@@D@B@@B@8P@@ HD@@P@@ @D 0HIIIHBB[[X@@@@@[[YA@RRRPPLD @D@@H@@ PD@@H\A@@A@
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   190
@ @@LP0@@@=0@@@@@@@@@P@@@@L@@@@@@@@@@P@@@@M @@@@@@@b') colorMapFromArray:#[0 0 0 255 255 255] mask:((ImageMask width:32 height:32) bits:(ByteArray fromPackedString:'
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   191
@@_@@@@G0@@@@X@@@@G@@@@A0@@@@X@@@@?0@@@??@@@\X8@@LG#@@FA8X@A XF@@0G@0@M!!0LO[[XCC???????????C@[[[00NF0@LC L@A XF@@X^A @CG
15763
87b7752ddde1 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15700
diff changeset
   192
 0@@\X8@@C?<@@@O<@@@@X@@@@N@@@@C @@@@X@@@@O @@@C8@@b'); yourself); yourself]
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   193
!
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
   194
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   195
httpServerIcon
6346
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   196
    <resource: #programImage>
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   197
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   198
    ^ AbstractSettingsApplication::HTTPStartServerSettingsApplication defaultIcon
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   199
!
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   200
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   201
systemBrowser24x24Icon
6346
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   202
    <resource: #programImage>
3b3d962e691c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6264
diff changeset
   203
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   204
    ^ ToolbarIconLibrary systemBrowser24x24Icon
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   205
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   206
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   207
!AbstractLauncherApplication class methodsFor:'queries'!
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   208
15946
ead61a2c0869 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15925
diff changeset
   209
isAbstract
ead61a2c0869 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 15925
diff changeset
   210
    ^ self == AbstractLauncherApplication
2195
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   211
! !
5f1c47696cd6 added documentation
Claus Gittinger <cg@exept.de>
parents: 2194
diff changeset
   212
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   213
!AbstractLauncherApplication class methodsFor:'settings application list'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   214
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   215
addSettingsApplicationByClass:aClass withName:aName icon:anIcon
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   216
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   217
    | userSetList addItem|
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   218
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   219
    userSetList := self userSettingsList.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   220
    addItem := Array with:aName with:aClass with:anIcon.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   221
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   222
    "Ignore existing entries found in SettingsList for that name"
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   223
    (SettingsList ? #()) do:[:entry |
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   224
        entry first = aName ifTrue: [
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   225
            ('Settings named "%1" already exists in "%2" with settings app class "%3"' 
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   226
                bindWith:aName
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   227
                    with:self name printString
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   228
                    with:entry second
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   229
            ) infoPrintCR.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   230
            ^ self
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   231
        ].    
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   232
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   233
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   234
    "/ remove existing entries in UserSettingsList for that name
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   235
    userSetList copy do:[:entry |
4704
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   236
        entry first = aName ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   237
            userSetList remove:entry.
4704
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   238
        ]
a2ec1833538e *** empty log message ***
penk
parents: 4641
diff changeset
   239
    ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   240
    userSetList add:addItem.
4436
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   241
    OpenSettingsDialog notNil ifTrue:[
4893
39dec723f6ad *** empty log message ***
penk
parents: 4879
diff changeset
   242
        OpenSettingsDialog installSettingsEntry:addItem
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   243
    ].
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   244
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   245
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   246
allSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   247
    ^ self settingsList, self userSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   248
!
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   249
5423
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   250
defaultSettingsApplicationList
8622
0c50929cb6ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8612
diff changeset
   251
    "/ cg: moved it to SettingsDialog - everyone is expecting it there and had to search it...
0c50929cb6ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8612
diff changeset
   252
    "/ left here for backw. compatibility.
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   253
8622
0c50929cb6ec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8612
diff changeset
   254
    ^ SettingsDialog defaultSettingsApplicationList
5423
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   255
!
884569242087 defaultSettingsList moved from SettingsDialog to Launcher
Claus Gittinger <cg@exept.de>
parents: 5410
diff changeset
   256
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   257
expandSettingsList:rawList
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   258
    "this expands a raw settings list,
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   259
     by looking for entries with a block in their class name.
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   260
     If any such is present, it is evaluated, returning
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   261
     a collection of actual entries to use. Then, also % entries in
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   262
     the name and icon are evaluated by sending corresponding messages
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   263
     to the collected classes.
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   264
     This allows for easy dynamic construction of more complicated
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   265
     lists, for example to adapt to the set of loaded classes dynamically."
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   266
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   267
    "I am not sure. if this is is a good idea; although it makes heavy use of
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   268
     Smalltalk's dynamic features, it is probably better done differently
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   269
     (letting the caller do this).
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   270
     The code here is harder to debug, and understand"
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   271
    
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   272
    |cookedList settingsList|
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   273
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   274
    cookedList := OrderedCollection new.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   275
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   276
    rawList do:[:eachEntry|
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   277
        |treeName classNameOrBlock newEntry code classList name nameCode nameBlock nameList iconCode iconBlock|
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   278
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   279
        classNameOrBlock := eachEntry at:2 ifAbsent:nil.
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   280
        classNameOrBlock isBlock ifTrue:[
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   281
            classList := classNameOrBlock value select:[:clsOrNil | clsOrNil notNil].
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   282
            name := eachEntry at:1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   283
            self assert:(name includesString:'[').
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   284
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   285
            nameCode := name copyFrom:(name indexOf:$[)+1 to:(name indexOf:$])-1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   286
            nameCode := '^ [:each | ' , (nameCode copyReplaceString:'%' withString:'each') ,']'.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   287
            nameBlock := Parser evaluate:nameCode.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   288
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   289
            nameList := classList collect:nameBlock.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   290
            nameList sortWith:classList.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   291
            nameList with:classList do:[:eachName :eachClass |
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   292
                |newEntry|
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   293
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   294
                newEntry := eachEntry copy.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   295
                newEntry at:1 put:(name copyTo:(name indexOf:$[)-1),eachName.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   296
                newEntry at:2 put:eachClass name.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   297
                cookedList add:newEntry.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   298
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   299
        ] ifFalse:[
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   300
            (classNameOrBlock isNil "a directory entry"
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   301
            or:[ (Smalltalk at:classNameOrBlock) notNil "a valid entry"]) ifTrue:[
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   302
                cookedList add:eachEntry.
14475
724159baf6af class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14459
diff changeset
   303
            ] ifFalse:[
15355
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   304
                classNameOrBlock notNil ifTrue:[
442c5e018df2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15352
diff changeset
   305
                    Transcript showCR:'Launcher: missing settings class: ',classNameOrBlock.
14475
724159baf6af class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14459
diff changeset
   306
                ].
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   307
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   308
        ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   309
    ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   310
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   311
    settingsList := 
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   312
        cookedList collect:[:eachEntry |
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   313
            |iconCodeOrSelector iconCode iconBlock newEntry|
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   314
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   315
            iconCodeOrSelector := eachEntry at:3 ifAbsent:nil.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   316
            iconCodeOrSelector isNil ifTrue:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   317
                newEntry := eachEntry
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   318
            ] ifFalse:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   319
                newEntry := eachEntry copy.
16107
8e8e7dc3035d #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16096
diff changeset
   320
                (iconCodeOrSelector startsWith:$[) ifTrue:[
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   321
                    iconCode := iconCodeOrSelector copyFrom:(iconCodeOrSelector indexOf:$[)+1 to:(iconCodeOrSelector indexOf:$])-1.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   322
                    iconCode := '^ [:each | ' , (iconCode copyReplaceString:'%' withString:'each') ,']'.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   323
                    iconBlock := Parser evaluate:iconCode.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   324
                    newEntry at:3 put:(iconBlock value:(Smalltalk classNamed:(eachEntry at:2))).
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   325
                ] ifFalse:[
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   326
                    newEntry at:3 put:(self perform:iconCodeOrSelector).
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   327
                ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   328
            ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   329
            newEntry.
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   330
        ].
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   331
9188
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   332
    ^ settingsList.
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   333
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   334
    "
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   335
     self withAllSubclassesDo:[:cls | cls initializeSettingsList ]
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   336
    "
15352
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   337
!
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   338
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   339
initializeSettingsList
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   340
    SettingsList := self expandSettingsList:(self defaultSettingsApplicationList).
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   341
    ^ SettingsList.
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   342
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   343
    "
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   344
     self withAllSubclassesDo:[:cls | cls initializeSettingsList ]
f62436b30ab8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15275
diff changeset
   345
    "
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   346
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   347
    "Modified: / 16-12-2002 / 18:12:50 / penk"
9875
062f2c80dff0 changed: #initializeSettingsList
Claus Gittinger <cg@exept.de>
parents: 9860
diff changeset
   348
    "Modified: / 20-04-2011 / 17:03:33 / cg"
8761
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   349
!
993414b0b0f1 keep settingsList in an instance class variable
fm
parents: 8680
diff changeset
   350
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   351
removeSettingsApplicationByClass:aClass
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   352
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   353
    | userSetList remItem|
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   354
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   355
    userSetList := self userSettingsList.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   356
    remItem := userSetList detect:[:item| (item at:2) = aClass] ifNone:[nil].
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   357
    remItem notNil ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   358
        userSetList remove:remItem.
4436
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   359
        OpenSettingsDialog notNil ifTrue:[
858e6ff50df1 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 4429
diff changeset
   360
            self removeSettingsEntry:remItem forSettingsApp:OpenSettingsDialog.
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
   361
        ].
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   362
    ].
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   363
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   364
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   365
removeSettingsEntry:entry forSettingsApp:aSettingsApp
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   366
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   367
    |applName applClass|
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   368
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   369
    applName := entry at:1.
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   370
    applClass := entry at:2.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   371
    aSettingsApp remApplClassByName:applName.
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   372
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   373
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   374
settingsList
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   375
    "/ do NOT cache SettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   376
    "/ use UserSettingsList to add settings from loaded libraries
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   377
9188
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   378
    SettingsList := nil.
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   379
    SettingsList isNil ifTrue: [
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   380
        SettingsList := self initializeSettingsList
2ee7d25e44cc do NOT cache the settings list
Claus Gittinger <cg@exept.de>
parents: 9165
diff changeset
   381
    ].
9137
d252e24bd64b window settings splitted; lower window settings added
Claus Gittinger <cg@exept.de>
parents: 9084
diff changeset
   382
    ^ SettingsList
9860
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   383
5225713f415e comment/format in:
Claus Gittinger <cg@exept.de>
parents: 9806
diff changeset
   384
    "Modified: / 19-04-2011 / 12:08:17 / cg"
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   385
!
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   386
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   387
userSettingsList
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   388
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   389
    UserSettingsList isNil ifTrue: [
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   390
        UserSettingsList := OrderedCollection new.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   391
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   392
    ^ UserSettingsList
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   393
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
   394
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   395
!AbstractLauncherApplication class methodsFor:'settings dialog'!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   396
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   397
openSettings
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   398
    ^ self openSettingsFor: nil
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   399
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   400
    "Created: / 08-10-2014 / 23:42:08 / Jan Vrany <jan.vrany@fit.cvut.cz>"
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   401
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   402
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   403
openSettingsAndSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   404
    ^ self openSettingsFor: nil andSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   405
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   406
    "Created: / 08-10-2014 / 23:43:44 / Jan Vrany <jan.vrany@fit.cvut.cz>"
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   407
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   408
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   409
openSettingsFor: requestor
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   410
    ^ self openSettingsFor: requestor andSelect: LastSettingsPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   411
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   412
    "Created: / 08-10-2014 / 23:40:47 / Jan Vrany <jan.vrany@fit.cvut.cz>"
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   413
!
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   414
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   415
openSettingsFor: requestor andSelect: selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   416
    |settingsApp wg proc|
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   417
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   418
    OpenSettingsDialog notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   419
        (wg := OpenSettingsDialog windowGroup) notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   420
            (proc := wg process) notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   421
                proc isDead ifFalse:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   422
                    OpenSettingsDialog window raiseDeiconified.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   423
                    ^ self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   424
                ]
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   425
            ]
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   426
        ].
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   427
        OpenSettingsDialog := nil.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   428
    ].
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   429
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   430
    settingsApp := SettingsDialog new.
16974
0159bd547729 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16969
diff changeset
   431
    settingsApp resources:(AbstractLauncherApplication resources).
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   432
    settingsApp requestor:requestor.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   433
    settingsApp installSettingsEntries:(self allSettingsList).
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   434
    "/ settingsApp requestor:self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   435
    OpenSettingsDialog := settingsApp.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   436
    settingsApp allButOpen.
16990
17d8126f6bbf #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16983
diff changeset
   437
    "/ settingsApp showNonDefaultSettingsMenuItemVisibleHolder value:true.
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   438
    settingsApp window label:(self classResources string:'ST/X Settings').
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   439
    settingsApp openWindow.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   440
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   441
    selectedPageName notNil ifTrue:[
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   442
        settingsApp selectItemWithName:selectedPageName
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   443
    ].
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   444
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   445
    "Created: / 08-10-2014 / 23:42:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   446
! !
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
   447
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   448
!AbstractLauncherApplication class methodsFor:'utilities'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   449
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   450
openLoadPackageDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   451
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   452
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   453
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   454
     add remote packages (central goody repository?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   455
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   456
    PackageLoadDialog open
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   457
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
   458
17583
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   459
!AbstractLauncherApplication methodsFor:'actions - file'!
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   460
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   461
snapshot
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   462
    "saves a snapshot image, after asking for a fileName"
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   463
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   464
    |fileName|
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   465
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   466
    fileName := DialogBox
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   467
                    request:(resources at:'filename for image:') withCRs
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   468
              initialAnswer:(ObjectMemory nameForSnapshot) 
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   469
                    okLabel:(resources at:'save')
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   470
                      title:(resources string:'save image')
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   471
                   onCancel:nil.
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   472
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   473
    fileName notNil ifTrue:[
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   474
        self showCursor:Cursor write.
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   475
        [
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   476
            (ObjectMemory snapShotOn:fileName) ifFalse:[
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   477
                "
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   478
                 snapshot failed for some reason (disk full, no permission etc.)
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   479
                "
18334
0047a6edbe01 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 18193
diff changeset
   480
                self warn:('Failed to save snapshot image (disk full or not writable)').
17583
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   481
            ]
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   482
        ] ensure:[
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   483
            self restoreCursors.
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   484
        ].
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   485
    ].
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   486
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   487
    "Modified: / 17-07-2017 / 10:14:09 / cg"
18334
0047a6edbe01 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 18193
diff changeset
   488
    "Modified: / 09-08-2018 / 15:29:26 / Claus Gittinger"
17585
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   489
!
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   490
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   491
snapshotAndExit
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   492
    "saves a snapshot image and exits, after asking for a fileName"
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   493
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   494
    |fileName ok|
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   495
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   496
    fileName := DialogBox
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   497
                    request:(resources at:'filename for image:') withCRs
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   498
              initialAnswer:(ObjectMemory nameForSnapshot) 
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   499
                    okLabel:(resources at:'save & exit')
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   500
                      title:(resources string:'save image & exit')
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   501
                   onCancel:nil.
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   502
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   503
    fileName notNil ifTrue:[
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   504
        self showCursor:Cursor write.
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   505
        [
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   506
            ok := ObjectMemory snapShotOn:fileName.
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   507
        ] ensure:[
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   508
            self restoreCursors.
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   509
        ].
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   510
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   511
        ok ifFalse:[
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   512
            "
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   513
             snapshot failed for some reason (disk full, no permission etc.)
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   514
             Do NOT exit in this case.
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   515
            "
18334
0047a6edbe01 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 18193
diff changeset
   516
            self warn:('Failed to save snapshot image (disk full or not writable)').
17585
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   517
        ] ifTrue:[
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   518
            "
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   519
             saveAllViews tells all views to shutdown neatly 
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   520
             (i.e. offer a chance to save the contents to a file).
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   521
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   522
             This is NOT required - all data should be in the snapshot ...
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   523
             ... however, if remote disks/mountable filesystems are involved,
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   524
             which may not be present the next time, it may make sense to 
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   525
             uncomment it and query for saving - time will show which is better.
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   526
            "
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   527
"
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   528
            self saveAllViews.
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   529
"
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   530
            Smalltalk exit
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   531
        ]
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   532
    ].
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   533
f5cf1f8f16f1 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17583
diff changeset
   534
    "Modified: / 17-07-2017 / 10:43:22 / cg"
18334
0047a6edbe01 #OTHER by cg
Claus Gittinger <cg@exept.de>
parents: 18193
diff changeset
   535
    "Modified: / 09-08-2018 / 15:29:36 / Claus Gittinger"
17583
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   536
! !
57658c266723 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17417
diff changeset
   537
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   538
!AbstractLauncherApplication methodsFor:'drag & drop'!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   539
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   540
canDropObjects:aCollectionOfDropObjects
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   541
    "Any object can be dropped into workspace..."
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   542
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   543
    ^ aCollectionOfDropObjects
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   544
        contains:[:someObject| (someObject isTextObject or:[ someObject isFileObject ])].
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   545
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   546
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   547
dropFileObject:aFilename
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   548
    |suffix|
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   549
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   550
    suffix := aFilename asFilename suffix.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   551
    suffix = 'st' ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   552
        ChangesBrowser openOn:aFilename.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   553
        ^ self.
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   554
    ].
17654
7fc6c5652a45 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17628
diff changeset
   555
    FileBrowser default openOn:aFilename.
7fc6c5652a45 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17628
diff changeset
   556
7fc6c5652a45 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17628
diff changeset
   557
    "Modified: / 01-09-2017 / 14:03:17 / cg"
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   558
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   559
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   560
dropObjects:aCollectionOfObjects
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   561
    "Any object can be dropped:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   562
        text: open a workspace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   563
        file:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   564
            .st - open a cange-browser
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   565
            other - open a fileBrowser
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   566
    "
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   567
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   568
    aCollectionOfObjects do:[:dropObject|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   569
        |theObject|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   570
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   571
        theObject := dropObject theObject.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   572
        dropObject isTextObject ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   573
            self dropTextObject:theObject
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   574
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   575
            dropObject isFileObject ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   576
                self dropFileObject:theObject
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   577
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   578
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   579
        ].
8381
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   580
    ].
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   581
!
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   582
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   583
dropTextObject:aDropContext
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   584
    WorkspaceApplication openWith:aDropContext.
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   585
! !
Claus Gittinger <cg@exept.de>
parents: 8346
diff changeset
   586
11870
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   587
!AbstractLauncherApplication methodsFor:'menu actions - tools'!
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   588
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   589
clearAllCoverageInfo
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   590
    "clear all coverage information"
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   591
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   592
    self withWaitCursorDo:[
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   593
        InstrumentedMethod cleanAllInfoWithChange:false
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   594
    ].
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   595
    Smalltalk changed:#coverageInfo.
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   596
!
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   597
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   598
startSUnitTestRunner2
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   599
    "open the SUnit test runner"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   600
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
   601
    self openApplication:#Tools::TestRunner2
11870
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   602
! !
ab752cb32b9a added: #clearAllCoverageInfo
Claus Gittinger <cg@exept.de>
parents: 11832
diff changeset
   603
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   604
!AbstractLauncherApplication methodsFor:'oldStyle-user actions-settings'!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   605
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   606
communicationsSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   607
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   608
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   609
    self settingsDialog:[:handler | handler communicationsSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   610
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   611
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   612
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   613
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   614
compilerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   615
    "open a dialog on compiler related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   616
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   617
    self settingsDialog:[:handler | handler compilerSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   618
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   619
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   620
displaySettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   621
    "open a dialog on display related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   622
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   623
    self settingsDialog:[:handler | handler displaySettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   624
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   625
    "Modified: / 31.7.1998 / 22:45:38 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   626
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   627
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   628
editSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   629
    "open a dialog on edit settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   630
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   631
    self settingsDialog:[:handler | handler editSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   632
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   633
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   634
    "Created: / 6.1.1999 / 14:14:48 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   635
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   636
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   637
fontSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   638
    "open a dialog on font related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   639
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   640
    self settingsDialog:[:handler | handler fontSettingsFor:self]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   641
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   642
    "Modified: / 31.7.1998 / 22:45:44 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   643
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   644
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   645
javaSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   646
    "open a dialog on java-subsystem related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   647
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   648
    self settingsDialog:[:handler | handler javaSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   649
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   650
    "Modified: / 31.7.1998 / 22:46:13 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   651
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   652
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   653
keyboardSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   654
    "open a dialog on keyboard related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   655
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   656
    self settingsDialog:[:handler | handler keyboardSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   657
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   658
    "Modified: / 31.7.1998 / 22:45:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   659
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   660
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   661
languageSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   662
    "open a dialog on language related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   663
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   664
    self settingsDialog:[:handler | handler languageSettingsFor:self]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   665
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   666
    "Modified: / 31.7.1998 / 22:46:13 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   667
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   668
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   669
loadSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   670
    "restore settings from a settings-file."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   671
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   672
    "a temporary kludge - we need a central systemSettings object for this,
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   673
     which can be saved/restored with a single store/read."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   674
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   675
    |fileName|
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   676
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   677
    fileName := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   678
        requestFileName:(resources string:'Load Settings From:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   679
        default:'settings.stx'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   680
        ok:(resources string:'Load')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   681
        abort:(resources string:'Cancel')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   682
        pattern:'*.stx'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   683
        fromDirectory:nil.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   684
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   685
    fileName isEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   686
        "/ canceled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   687
        ^ self
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   688
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   689
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   690
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   691
        Smalltalk fileIn:fileName.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   692
        self reOpen
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   693
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   694
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   695
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   696
memorySettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   697
    "open a dialog on objectMemory related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   698
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   699
    self settingsDialog:[:handler | handler memorySettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   700
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   701
    "Modified: / 31.7.1998 / 22:46:33 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   702
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   703
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   704
messageSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   705
    "open a dialog on infoMessage related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   706
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   707
    self settingsDialog:[:handler | handler messageSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   708
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   709
    "Modified: / 31.7.1998 / 22:46:45 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   710
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   711
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   712
miscSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   713
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   714
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   715
    self settingsDialog:[:handler | handler miscSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   716
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   717
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   718
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   719
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   720
printerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   721
    "open a dialog on printer related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   722
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   723
    self settingsDialog:[:handler | handler printerSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   724
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   725
    "Modified: / 31.7.1998 / 22:47:05 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   726
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   727
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   728
saveSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   729
    "save settings to a settings-file."
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   730
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   731
    self settingsDialog:[:handler | handler saveSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   732
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   733
    "Modified: / 31.7.1998 / 22:48:38 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   734
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   735
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   736
settingsDialog:symbolOrBlock
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   737
    |handler|
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   738
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   739
    RegisteredMenuHandlers notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   740
        handler := RegisteredMenuHandlers at:symbolOrBlock ifAbsent:nil.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   741
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   742
    handler isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   743
        handler := LauncherDialogs
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   744
    ].
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   745
    symbolOrBlock isBlock ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   746
        symbolOrBlock value:handler
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   747
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   748
        handler perform:symbolOrBlock with:self.
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   749
    ]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   750
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   751
    "Modified: / 24-02-2007 / 09:40:48 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   752
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   753
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   754
sourceAndDebuggerSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   755
    "open a dialog on misc other settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   756
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   757
    self settingsDialog:[:handler | handler sourceAndDebuggerSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   758
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   759
    "Modified: / 31.7.1998 / 22:47:21 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   760
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   761
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   762
toolSettings
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   763
    "open a dialog on tool settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   764
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   765
    self settingsDialog:[:handler | handler toolSettings]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   766
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   767
    "Modified: / 31.7.1998 / 22:46:56 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   768
    "Created: / 13.10.1998 / 15:50:53 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   769
!
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   770
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
   771
viewStyleSetting
7679
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   772
    "open a dialog on viewStyle related settings"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   773
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   774
    self settingsDialog:[:handler | handler viewStyleSettingsFor:self]
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   775
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   776
    "Modified: / 31.7.1998 / 22:47:33 / cg"
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   777
! !
1fe0dd4a6b59 category changes
Claus Gittinger <cg@exept.de>
parents: 7559
diff changeset
   778
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   779
!AbstractLauncherApplication methodsFor:'private'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   780
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   781
allTopViewsAndLabelsSortedFilteringWindowGroups: windowGroupFilterOrNil
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   782
    "helper returning all windows on all screens sorted by a label to suite"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   783
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   784
    |knownTopViewsAndLabels|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   785
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   786
    knownTopViewsAndLabels := OrderedCollection new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   787
    self allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: [:v :lbl |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   788
        knownTopViewsAndLabels add:(lbl -> v)
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   789
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   790
    knownTopViewsAndLabels sort:[:a :b | a key < b key].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   791
    ^ knownTopViewsAndLabels
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   792
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   793
    "Created: / 27-04-2012 / 13:04:21 / cg"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   794
!
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   795
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   796
allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: aBlock
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   797
    "helper enumerating all windows on all screens with a label to suite"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   798
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   799
    |knownTopViews genLabel|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   800
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   801
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   802
    genLabel := [:v | 
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   803
                    |app appName busyOrNot iconifiedOrNot 
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   804
                     sensor pending process|
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   805
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   806
                    app := v application.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   807
                    appName := (app isNil 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   808
                                    ifTrue:[''] 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   809
                                    ifFalse:[app class nameWithoutPrefix,': ']).
11490
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   810
                    busyOrNot := ''.
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   811
                    (sensor := v windowGroup sensor) notNil ifTrue:[
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   812
                        (pending := sensor pendingEvent) notNil ifTrue:[
14271
297ed164a7fc class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14238
diff changeset
   813
                            (Timestamp now secondDeltaFrom: pending timeStamp) > 1 ifTrue:[
11817
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   814
                                ((process := v windowGroup process) notNil and:[ process isDebugged]) ifTrue:[
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   815
                                    busyOrNot := ' [debug]'
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   816
                                ] ifFalse:[
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   817
                                    busyOrNot := ' [busy]'
76227c9e12bc changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11813
diff changeset
   818
                                ].
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
   819
                                busyOrNot := busyOrNot allBold withColor:Color red
11490
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   820
                            ]
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   821
                        ]
62451ecb3d3b changed: #allTopViewsFilteringWindowGroups:withLabelsDo:
Claus Gittinger <cg@exept.de>
parents: 11487
diff changeset
   822
                    ].
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   823
                    iconifiedOrNot := ''.
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   824
                    v topView isCollapsed ifTrue:[
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
   825
                        iconifiedOrNot := ' (iconified)' withColor:Color blue.
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   826
                    ].
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
   827
                    appName,'"',(v label ? 'aView'),'"',busyOrNot,iconifiedOrNot
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   828
                ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   829
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   830
    knownTopViews := IdentitySet new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   831
    Screen allScreens do:[:aScreen |
16749
c1192209d968 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16747
diff changeset
   832
        aScreen allViewsDo:[:aView |
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   833
            |top showIt wg|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   834
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   835
            aView notNil ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   836
                top := aView topView.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   837
                (knownTopViews includes:top) ifFalse:[
17159
25063f90ce7d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17154
diff changeset
   838
                    (top isDebugView) ifTrue:[
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   839
                        "/ although modal, show it.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   840
                        showIt := top realized
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   841
                    ] ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   842
                        (top isKindOf:TopView) ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   843
                            wg := top windowGroup.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   844
                            showIt := (wg notNil and:[wg isModal not]).
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   845
                            showIt ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   846
                                windowGroupFilterOrNil notNil ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   847
                                    showIt := windowGroupFilterOrNil includes:wg
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   848
                                ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   849
                            ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   850
                        ] ifFalse:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   851
                            showIt := false
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   852
                        ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   853
                    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   854
                    showIt ifTrue:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   855
                        aBlock value: top value:(genLabel value:top).
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   856
                        knownTopViews add: top.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   857
                    ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   858
                ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   859
            ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   860
        ]
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   861
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   862
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   863
    "Created: / 27-04-2012 / 12:56:53 / cg"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   864
!
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   865
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   866
findApplicationClass:classOrClassName nameSpace:aNameSpace
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   867
    "find some application, given the classes name.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   868
     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
   869
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   870
    |findClass cls classNameSymbol|
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   871
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   872
    classOrClassName isBehavior ifTrue:[
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   873
        ^ classOrClassName.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   874
    ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   875
    findClass :=
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   876
        [
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   877
            (classNameSymbol := classOrClassName asSymbolIfInterned) notNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   878
                cls := Smalltalk at:classNameSymbol.
14121
3c8e880471d9 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   879
                cls isNil ifTrue:[
17399
4777d0d080fc #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17223
diff changeset
   880
                    "/ look if it's in the nameSpace
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   881
                    aNameSpace notNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   882
                        cls := aNameSpace at:classNameSymbol
14121
3c8e880471d9 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14104
diff changeset
   883
                    ].
11832
a2fee9d12c5d changed: #findApplicationClass:nameSpace:
Claus Gittinger <cg@exept.de>
parents: 11817
diff changeset
   884
                ].
a2fee9d12c5d changed: #findApplicationClass:nameSpace:
Claus Gittinger <cg@exept.de>
parents: 11817
diff changeset
   885
            ].
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   886
        ].
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   887
    findClass value.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   888
    cls isNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   889
        (Dialog confirm:(resources
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   890
                    stringWithCRs:'Sorry, the ''%1''-class is not available.\\Shall I try to autoload it?'
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   891
                    with:classOrClassName allBold)) ifFalse:[
14445
93a87572e630 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14381
diff changeset
   892
            ^ AbortOperationRequest raise
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   893
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   894
        self withWaitCursorDo:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   895
            #(
14694
31166504525d class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14683
diff changeset
   896
                'stx:doc/coding'
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   897
                'stx:clients'
16096
4cc6835c7a20 #UI_ENHANCEMENT
Claus Gittinger <cg@exept.de>
parents: 16076
diff changeset
   898
                'stx:goodies/demos'
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   899
                'stx:libwidg3'
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   900
            ) do:[:pkg |
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   901
                Processor activeProcess withPriority:(Processor userSchedulingPriority) do:[
18448
0fbeddf2a269 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18406
diff changeset
   902
                    Smalltalk 
0fbeddf2a269 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18406
diff changeset
   903
                        recursiveInstallAutoloadedClassesFrom:(Smalltalk projectDirectoryForPackage:pkg)
0fbeddf2a269 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18406
diff changeset
   904
                        maxLevels:5    
14381
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   905
                ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   906
            ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   907
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   908
        findClass value.
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   909
        cls isNil ifTrue:[
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   910
            Dialog warn:(resources stringWithCRs:'Autoload failed.\\Sorry, please check the "stx:clients/demos" & "stx:goodies/clients" directories and load manually.').
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   911
            ^ nil
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   912
        ].
94832321caa4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14296
diff changeset
   913
        "/ self halt.
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   914
    ].
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   915
    ^ cls
17399
4777d0d080fc #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17223
diff changeset
   916
4777d0d080fc #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17223
diff changeset
   917
    "Modified (format): / 13-02-2017 / 19:54:55 / cg"
18448
0fbeddf2a269 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18406
diff changeset
   918
    "Modified: / 09-10-2018 / 11:10:45 / Claus Gittinger"
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   919
!
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
   920
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   921
findWindow:title
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   922
    "a helper for find & destroy and find & raise operations;
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   923
     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
   924
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   925
    ^ self findWindow:title windowGroupFilter:nil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   926
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   927
!
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   928
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   929
findWindow:title windowGroupFilter:windowGroupFilterOrNil
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   930
    "a helper for find & destroy and find & raise operations;
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   931
     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
   932
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   933
    |knownTopViewsAndLabels nameList box|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   934
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   935
    knownTopViewsAndLabels := OrderedCollection new.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   936
    self allTopViewsFilteringWindowGroups: windowGroupFilterOrNil withLabelsDo: [:v :lbl |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   937
        knownTopViewsAndLabels add:(lbl -> v)
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   938
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   939
    knownTopViewsAndLabels sort:[:a :b | a key < b key].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   940
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   941
    nameList := knownTopViewsAndLabels collect:[:lblAndView |
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   942
                                        |v l isDead wg p|
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   943
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   944
                                        l := lblAndView key.
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   945
                                        v := lblAndView value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   946
                                        v device == Display ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   947
                                            l := l , ' [' , (v device displayName ? '?') , ']'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   948
                                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   949
                                        ((wg := v windowGroup) notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   950
                                        and:[(p := wg process) notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   951
                                        and:[p state ~~ #dead]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   952
                                            l
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   953
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   954
                                            l , ' (dead ?)'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   955
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   956
                                      ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   957
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   958
    box := ListSelectionBox new.
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
   959
    box selectionChangeCallback:[:selectionIndex |   |v|
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   960
                                    v := (knownTopViewsAndLabels at:box selectionIndex) value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   961
                                    v raise. box raise
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   962
                                ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   963
    box noEnterField.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   964
    box list:nameList.
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
   965
    box label:(resources string:'View Selection').
6352
1dfde810826f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6346
diff changeset
   966
    box title:(resources stringWithCRs:title).
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   967
    box action:[:selection |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   968
        |v|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   969
16747
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   970
        box selectionIndex isNil ifTrue:[
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   971
            ^ nil.
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   972
        ].
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
   973
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   974
        v := (knownTopViewsAndLabels at:box selectionIndex) value.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   975
        box destroy.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
   976
        ^ v
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   977
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   978
    box extent:400@300.
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
   979
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   980
    ^ nil
11354
cdab1a0846a2 changed: #findWindow:windowGroupFilter:
Claus Gittinger <cg@exept.de>
parents: 11270
diff changeset
   981
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
   982
    "Modified: / 27-04-2012 / 12:59:37 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   983
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   984
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   985
openApplication: classOrClassName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   986
     "open an application, given by the classe name."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   987
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   988
    self openApplication:classOrClassName nameSpace:nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   989
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   990
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   991
openApplication:classOrClassName nameSpace:aNameSpace
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   992
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   993
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   994
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   995
    self openApplication:classOrClassName nameSpace:aNameSpace with:#open
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   996
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   997
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
   998
openApplication:classOrClassName nameSpace:aNameSpace with:aSelector
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
   999
    "open some application, given the classes name.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1000
     Look for it in Smalltalk and the given nameSpace"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1001
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1002
    |cls|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1003
2696
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
  1004
    cls := self findApplicationClass:classOrClassName nameSpace:aNameSpace.
bc8ab69f2a56 allow browserClass to be set in preferences
Claus Gittinger <cg@exept.de>
parents: 2689
diff changeset
  1005
    cls isNil ifTrue:[
14296
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
  1006
        Dialog information:'Could not find class: '
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
  1007
                            ,(classOrClassName isBehavior
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
  1008
                                ifTrue:[classOrClassName name]
59c1a4f442e4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14271
diff changeset
  1009
                                ifFalse:[classOrClassName]).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1010
        ^ self
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1011
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1012
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1013
    Autoload autoloadFailedSignal handle:[:ex |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1014
        self warn:(resources string:'Sorry, the %1 class seems to be not available (failed to load).' with:cls name)
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  1015
    ] do:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1016
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1017
            cls perform:aSelector
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1018
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1019
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1020
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1021
7882
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
  1022
openFileBrowser
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
  1023
     "open a fileBrowser"
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
  1024
17654
7fc6c5652a45 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17628
diff changeset
  1025
    self openApplication:(FileBrowser default) nameSpace:nil
7882
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
  1026
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
  1027
    "Created: / 05-11-2007 / 11:16:17 / cg"
17654
7fc6c5652a45 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17628
diff changeset
  1028
    "Modified: / 01-09-2017 / 14:03:27 / cg"
7882
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
  1029
!
1f5e30497c9a changed #openFileBrowser
Claus Gittinger <cg@exept.de>
parents: 7871
diff changeset
  1030
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1031
pickAView
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1032
    "let user pick a view and return it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1033
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1034
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1035
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1036
    (Delay forSeconds:1) wait.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1037
    v := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1038
    v isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1039
        self warn:'Sorry, this is not a smalltalk view'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1040
        ^ nil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1041
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1042
    ^ v
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1043
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1044
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1045
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1046
saveScreenImage:anImage defaultName:defaultName
17223
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1047
    "ask user for filename, then save an image into a file"
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1048
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1049
    Dialog
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1050
        imageSaveDialog:(resources string:'Save hardcopy image in:')
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1051
        image:anImage 
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1052
        default:(defaultName , '.png')
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1053
        pattern:'*.png;*.tiff;*.bmp;*.gif'
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1054
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1055
"/    |fileName|
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1056
"/
17222
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1057
"/    fileName := Dialog
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1058
"/                    requestFileName:(resources string:'Save hardcopy image in:')
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1059
"/                    default:(defaultName , '.png')
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1060
"/                    ok:(resources string:'Save')
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1061
"/                    abort:(resources string:'Cancel')
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1062
"/                    pattern:'*.png;*.tiff;*.bmp'
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1063
"/                    fromDirectory:nil
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1064
"/                    forSave:true
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1065
"/                    whenBoxCreatedEvaluate:[:box |
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1066
"/                        |editButton paintButton copyButton|
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1067
"/                        "/ UserPreferences current useNewFileDialog ifFalse:[
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1068
"/                            editButton := Button label:(resources string:'Edit').
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1069
"/                            editButton
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1070
"/                                action:[
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1071
"/                                    box hide; destroy.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1072
"/                                    ImageEditor openOnImage:anImage.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1073
"/                                ].
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1074
"/                            box addButton:editButton.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1075
"/
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1076
"/                            paintButton := Button label:(resources string:'OS Editor').
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1077
"/                            paintButton
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1078
"/                                action:[
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1079
"/                                    |tempStream|
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1080
"/
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1081
"/                                    tempStream := FileStream newTemporaryWithSuffix:'png'.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1082
"/                                    box hide; destroy.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1083
"/                                    PNGReader save:anImage onStream:tempStream.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1084
"/                                    tempStream close.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1085
"/                                    OperatingSystem
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1086
"/                                        openApplicationForDocument:tempStream fileName operation:#edit mimeType:'image/png'.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1087
"/                                ].
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1088
"/                            box addButton:paintButton.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1089
"/
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1090
"/                            copyButton := Button label:(resources string:'Copy to Clipboard').
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1091
"/                            copyButton
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1092
"/                                action:[
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1093
"/                                    self window setClipboardObject:anImage.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1094
"/                                    box hide; destroy.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1095
"/                                ].
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1096
"/                            box addButton:copyButton.
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1097
"/                        "/ ]
e5c7faf32eda #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17213
diff changeset
  1098
"/                   ].
17223
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1099
"/
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1100
"/    fileName notEmptyOrNil ifTrue:[
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1101
"/        anImage saveOn:fileName.
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1102
"/        ImageEditView lastSaveDirectory:fileName asFilename directory pathName.
741db7a1bba9 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17222
diff changeset
  1103
"/    ].
9609
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1104
f1401442b66b changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9528
diff changeset
  1105
    "Created: / 29-01-1998 / 23:20:36 / cg"
9748
a5701b91134a changed: #saveScreenImage:defaultName:
Claus Gittinger <cg@exept.de>
parents: 9665
diff changeset
  1106
    "Modified: / 08-02-2011 / 21:51:11 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1107
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1108
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1109
showDocumentation:aRelativeDocFilePath
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1110
    "open an HTML browser on some document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1111
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1112
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1113
     although that one is not yet finished,
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1114
     its better than nothing ...
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1115
    "
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1116
    HTMLDocumentView notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1117
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1118
            "
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1119
             temporary kludge;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1120
             not all machines can autoload binaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1121
             however, on my SGI (which can) we want it
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1122
             to load automatically.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1123
            "
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1124
            HTMLDocumentView isLoaded ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1125
                Error catch:[HTMLDocumentView autoload]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1126
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1127
            HTMLDocumentView isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1128
                HTMLDocumentView openFullOnDocumentationFile:aRelativeDocFilePath.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1129
                ^ self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1130
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1131
        ]
2001
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
    self warn:'Sorry, the ST/X HTML reader is not
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1135
included in this release.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1136
7782
c6b2180cc789 changed #showDocumentation:
Stefan Vogel <sv@exept.de>
parents: 7726
diff changeset
  1137
Please use firefox, konqueror, internet explorer or any
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1138
other HTML viewer to see the documentation.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1139
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1140
The documentation is found in the ''doc/online'' directory.'.
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1141
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1142
    "Modified: / 25.2.1998 / 21:24:20 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1143
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1144
4859
462e871755e0 method category rename
Claus Gittinger <cg@exept.de>
parents: 4854
diff changeset
  1145
!AbstractLauncherApplication methodsFor:'private-settings callBacks'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1146
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1147
changeViewStyleTo:newStyle
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1148
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1149
    newStyle notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1150
        self withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1151
            (transcript ? Transcript) showCR:'change style to ' , newStyle , ' ...'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1152
            View defaultStyle:newStyle asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1153
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1154
        self reopenLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1155
        DebugView newDebugger.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1156
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1157
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1158
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1159
fontBoxForEncoding:encodingMatch
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1160
    "open a fontBox, showing fonts which match some encoding
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1161
     (used when changing to japanese ...)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1162
4062
decb623a8c3d settings dialogs no longer need a requestor (with few exceptions)
ca
parents: 4052
diff changeset
  1163
    ^ LauncherDialogs fontBoxForEncoding:encodingMatch
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1164
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1165
"/    |box y b
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1166
"/     labelDef buttonDef listDef menuDef textDef
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1167
"/     models labels allOfThem filter|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1168
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1169
"/    encodingMatch notNil ifTrue:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1170
"/        filter := [:f | f encoding notNil
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1171
"/                        and:[encodingMatch match:f encoding]].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1172
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1173
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1174
"/    models := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1175
"/    labels := OrderedCollection new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1176
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1177
"/    models add:(allOfThem := nil asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1178
"/    models add:(labelDef := Label defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1179
"/    models add:(buttonDef := Button defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1180
"/    models add:(listDef := SelectionInListView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1181
"/    models add:(menuDef := MenuView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1182
"/    models add:(textDef := TextView defaultFont asValue).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1183
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1184
"/    box := Dialog new.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1185
"/    box label:(resources string:'Font settings').
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1186
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1187
"/    models
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1188
"/    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
  1189
"/    do:[:model :title |
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1190
"/        |y2 lbl f i|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1191
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1192
"/        f := model value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1193
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1194
"/        (box addTextLabel:title) adjust:#left.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1195
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1196
"/        y := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1197
"/        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
  1198
"/        b relativeExtent:nil; extent:(b preferredExtent).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1199
"/        y2 := box yPosition.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1200
"/        box yPosition:y.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1201
"/        i := box leftIndent.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1202
"/        box leftIndent:(b widthIncludingBorder + View viewSpacing).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1203
"/        (lbl := box addTextLabel:'')
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1204
"/            adjust:#left;
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1205
"/            font:(model value);
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1206
"/            labelChannel:(BlockValue
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1207
"/                            with:[:v | |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1208
"/                                f := v value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1209
"/                                f isNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1210
"/                                    ''
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1211
"/                                ] ifFalse:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1212
"/                                    f userFriendlyName
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1213
"/                                ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1214
"/                            ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1215
"/                            argument:model).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1216
"/        labels add:lbl.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1217
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1218
"/        box leftIndent:i.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1219
"/        box yPosition:(box yPosition max:y2).
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1220
"/        box addVerticalSpace.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1221
"/        box addHorizontalLine.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1222
"/        box addVerticalSpace.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1223
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1224
"/        b action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1225
"/            |f|
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1226
"/
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1227
"/            f := FontPanel
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1228
"/                fontFromUserInitial:(model value)
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1229
"/                              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
  1230
"/                             filter:filter.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1231
"/            f notNil ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1232
"/                model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1233
"/                    models do:[:m | m value:f].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1234
"/                    labels do:[:l | l font:f]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1235
"/                ] ifFalse:[
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1236
"/                    model value:f.
2047
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1237
"/                    lbl font:f.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1238
"/                ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1239
"/            ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1240
"/        ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1241
"/        model == allOfThem ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1242
"/            box addVerticalSpace
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1243
"/        ]
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1244
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1245
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1246
"/    box addAbortButton; addOkButton.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1247
"/    (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
  1248
"/        action:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1249
"/            "/ fetch defaults
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1250
"/            View readStyleSheetAndUpdateAllStyleCaches.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1251
"/            labelDef value: Label defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1252
"/            buttonDef value: Button defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1253
"/            listDef value: SelectionInListView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1254
"/            menuDef value: MenuView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1255
"/            textDef value: TextView defaultFont.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1256
"/        ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1257
"/
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1258
"/    box open.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1259
"/    box accepted ifTrue:[
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1260
"/        Label defaultFont:labelDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1261
"/        Button defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1262
"/        Toggle defaultFont:buttonDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1263
"/        SelectionInListView defaultFont:listDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1264
"/        MenuView defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1265
"/        PullDownMenu defaultFont:menuDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1266
"/        TextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1267
"/        EditTextView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1268
"/        CodeView defaultFont:textDef value.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1269
"/    ].
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1270
"/    box destroy.
bb2070a26bd2 care for styleSheets right-to-left button order.
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  1271
"/    ^ box accepted
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1272
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1273
    "Modified: / 15.9.1998 / 22:04:56 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1274
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1275
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1276
reopenLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1277
    "reopen a new launcher.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1278
     for now (since style & language settings currently do
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1279
     not affect living views ...)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1280
     WARNING: bad design: Message known in LauncherDialogs"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1281
2034
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1282
    |oldOrigin contents builder newLauncher|
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1283
b3537f805381 force reopen at same position (fvwm & mwm)
Claus Gittinger <cg@exept.de>
parents: 2021
diff changeset
  1284
    oldOrigin := self window origin.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1285
    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
  1286
    builder := self class openAt:oldOrigin.
3787
88b39d2d33d8 tzpe on dialog label
Claus Gittinger <cg@exept.de>
parents: 3782
diff changeset
  1287
    builder window waitUntilVisible; origin:oldOrigin.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1288
    newLauncher := builder application.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1289
    transcript notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1290
        newLauncher transcript list:contents; hideCursor; scrollToBottom; cursorToEnd; showCursor.
2458
3c273283bb84 care for transcript being nil.
Claus Gittinger <cg@exept.de>
parents: 2457
diff changeset
  1291
    ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1292
    ^ newLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1293
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1294
    "Modified: / 4.8.1998 / 17:08:33 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1295
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1296
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1297
!AbstractLauncherApplication methodsFor:'queries'!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1298
3410
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1299
bugReporterAvailable
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1300
    ^ BugGUI notNil
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  1301
    or:[ Expecco::ExpeccoNetAPI notNil ]
3410
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1302
!
fd14c97c539a *** empty log message ***
penk
parents: 3408
diff changeset
  1303
3120
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1304
hasPDALauncher
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1305
    ^ PDALauncher notNil
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1306
!
564ee1530a8e startPDALauncher item invisible for the normal user
Claus Gittinger <cg@exept.de>
parents: 3100
diff changeset
  1307
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1308
monticelloRepositoryAvailable
11468
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1309
    ^ true "MCRepositoryBrowser notNil" "/ - will install, if required.
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1310
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1311
    "Created: / 25-11-2011 / 17:54:37 / cg"
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1312
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1313
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1314
processName
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1315
    "for monitors only - my name"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1316
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1317
    ^ 'ST/X Launcher'
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1318
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1319
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1320
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1321
remoteImageBrowserAvailable
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1322
    ^ SmalltalkShareClient notNil and:[RemoteImage notNil]
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1323
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1324
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1325
transcript
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1326
    "my transcript"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1327
3079
9e8b81438edb checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3078
diff changeset
  1328
    transcript isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1329
        ^ Transcript current
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1330
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1331
    ^ transcript
9330
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1332
!
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1333
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1334
windowTreeViewAvailable
378159dded04 refactored for better reusability (menu configuration)
Claus Gittinger <cg@exept.de>
parents: 9303
diff changeset
  1335
    ^ false "/ WindowTreeView notNil
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1336
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1337
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1338
!AbstractLauncherApplication methodsFor:'settings dialog'!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1339
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1340
openSettings
14752
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1341
    ^ self class openSettingsFor: self.
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1342
08eb9a14633a class: AbstractLauncherApplication
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 14694
diff changeset
  1343
    "Modified: / 08-10-2014 / 23:40:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1344
!
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1345
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1346
settingsClosed
13087
82522521c37e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12928
diff changeset
  1347
    LastSettingsPageName := OpenSettingsDialog selectedItemsName.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1348
    OpenSettingsDialog := nil.
4379
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1349
! !
2e224d2ccf50 move SettingsApplication outside because its not a Launcher spezific tool
penk
parents: 4372
diff changeset
  1350
4863
66a3c33f28a2 method category rename
Claus Gittinger <cg@exept.de>
parents: 4862
diff changeset
  1351
!AbstractLauncherApplication methodsFor:'startup & release'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1352
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1353
addTopViewsToCurrentProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1354
    "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
  1355
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1356
    ^ self
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1357
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1358
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1359
2314
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1360
closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1361
    OpenLaunchers remove:self ifAbsent:nil.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1362
    super closeDownViews
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1363
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1364
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1365
postBuildWith:aBuilder
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1366
    super postBuildWith:aBuilder.
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1367
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1368
    OpenLaunchers isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1369
        OpenLaunchers := IdentitySet new.
2314
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1370
    ].
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1371
    OpenLaunchers add:self
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1372
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1373
!
7ac730bdb664 OpenLaunchers as IdentitySet methodes modified add and remove
tm
parents: 2311
diff changeset
  1374
5210
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1375
reOpen
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1376
    "reopen a new launcher.
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1377
     for now (since style & language settings currently do
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1378
     not affect living views ...)"
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1379
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1380
    self reopenLauncher "/ WARNING: bad design: Message known in LauncherDialogs
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1381
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1382
    "Modified: / 31.7.1998 / 22:48:12 / cg"
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1383
!
e63c19690b68 reOpen pushed up;
Claus Gittinger <cg@exept.de>
parents: 5181
diff changeset
  1384
2040
06dd0e21aae0 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2038
diff changeset
  1385
requestForWindowClose
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1386
    "close request from windowing system (window close);
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1387
     confirm and ask if closing of launcher only or
16940
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  1388
     a Smalltalk-exit is wanted"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1389
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1390
    |answer|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1391
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1392
    answer := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1393
                confirmWithCancel:(resources string:'Close %1 only or Exit Smalltalk (Close all) ?' with:self class name)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1394
                labels:(resources array:#('Cancel' 'Close' 'Exit'))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1395
                default:3.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1396
    answer isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1397
        "/ cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1398
        ^ false
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1399
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1400
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1401
    answer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1402
        ^ true
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
16940
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  1405
    self exit.
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  1406
    "/ not reached
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  1407
    ^ false
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1408
2160
028c1d5740e5 exit smalltalk is now the default, when closing the launcher.
Claus Gittinger <cg@exept.de>
parents: 2149
diff changeset
  1409
    "Modified: / 20.5.1999 / 17:24:47 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1410
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1411
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1412
saveAndTerminateRequest
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1413
    "some windowManagers can send this, to shutDown an application
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1414
     but let it save its state before, for later restart.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1415
     Although I have not yet encountered such a windowManager,
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1416
     we are already prepared for this ;-)"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1417
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1418
    self snapshot.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1419
    super saveAndTerminateRequest
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1420
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1421
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1422
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1423
!AbstractLauncherApplication methodsFor:'user actions-about'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1424
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1425
openLicenseConditions
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1426
    "open an HTML browser on the 'LICENCE' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1427
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1428
    self withWaitCursorDo:[
15925
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1429
        |rel lang doc doc_De doc_En|
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1430
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1431
        rel := Smalltalk releaseIdentification.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1432
        ((rel = 'ST/X_free_vsn') or:[rel = 'ST/X_demo_free_vsn']) ifTrue:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1433
            doc_En := 'english/LICENCE_FREE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1434
            doc_De := 'german/LICENCE_FREE_STX.html'.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1435
        ] ifFalse:[
15925
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1436
            doc_En := 'english/LICENCE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1437
            doc_De := 'german/LICENCE_STX.html'.
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1438
        ].    
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1439
        ((lang := UserPreferences current language) = 'de'
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1440
        or:[lang = 'german']) ifTrue:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1441
            doc := doc_De
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1442
        ] ifFalse:[
2261f4a02519 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 15763
diff changeset
  1443
            doc := doc_En
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1444
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1445
        doc := resources at:'LICENCEFILE' default:doc.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1446
        self showDocumentation:('../' , doc)
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1447
    ]
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1448
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1449
    "Created: / 5.2.1998 / 21:43:19 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1450
    "Modified: / 23.4.1998 / 11:45:53 / cg"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1451
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1452
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1453
!AbstractLauncherApplication methodsFor:'user actions-classes'!
2005
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
browseAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1456
    "open a browser showing all breakPointed/traced methods
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1457
     (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
  1458
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1459
    |filter|
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1460
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1461
    "/ only methods which are still anchored in the class are relevant here
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1462
    "/ (i.e. allInstances may return too many)
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1463
    filter := [:m | m mclass notNil].
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1464
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1465
    SystemBrowser default
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1466
        browseMethods:(Set new
14534
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1467
                        addAll:(WrappedMethod allWrappedMethods select:filter);
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1468
                        addAll:(MethodWithBreakpoints allBreakpointedMethods select:filter);
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1469
                        yourself)
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1470
        title:'All breakPointed/traced methods'
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1471
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1472
    "Modified: / 01-09-2017 / 14:17:20 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1473
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1474
16888
a285b73d0ef0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16886
diff changeset
  1475
browseContainingString
a285b73d0ef0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16886
diff changeset
  1476
    "open a browser after asking for a string"
a285b73d0ef0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16886
diff changeset
  1477
a285b73d0ef0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16886
diff changeset
  1478
    self withWaitCursorDo:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1479
        SystemBrowser default new browseMenuMethodsWithString
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1480
    ].
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1481
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1482
    "
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1483
     self basicNew browseContainingString
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1484
    "
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1485
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1486
    "Modified (comment): / 01-09-2017 / 14:18:28 / cg"
16888
a285b73d0ef0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16886
diff changeset
  1487
!
a285b73d0ef0 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16886
diff changeset
  1488
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1489
browseImplementors
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1490
    "open an implementors- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1491
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1492
    |selector dialog|
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1493
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1494
    Tools::SearchDialog notNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1495
        "/ use a better dialog
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1496
        dialog := Tools::SearchDialog new
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1497
            setupToAskForMethodSearchTitle:(resources string:'Selector to browse implementors of:\(TAB for completion; matchPattern allowed)')
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1498
            forBrowser:nil
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1499
            searchWhat:#selector searchArea:#everywhere
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1500
            withCaseIgnore:true withMatch:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1501
            withMethodList:false
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1502
            allowFind:false allowBuffer:false allowBrowser:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1503
            withTextEntry:true.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1504
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1505
        dialog askThenDo:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1506
            |classes methods isMethod selector ignoreCase match|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1507
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1508
            (classes := dialog classesToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1509
                (selector := dialog selectorToSearch) notEmptyOrNil ifTrue:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1510
                    SystemBrowser default
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1511
                        browseImplementorsOf:selector 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1512
                        in:classes
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1513
                        ignoreCase:(dialog searchIgnoringCase)
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1514
                        match:(dialog searchWithMatch)    
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1515
                        title:(SystemBrowser classResources string:'implementors of: %1' with:selector).
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1516
                ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1517
            ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1518
        ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1519
        ^ self.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1520
    ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1521
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1522
    "/ the simple dialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1523
    selector := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1524
                    requestSelector:(resources string:'Browse implementors of (Tab for completion):')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1525
                    okLabel:(resources string:'Browse')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1526
                    initialAnswer:''.
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1527
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1528
    selector notEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1529
        self withWaitCursorDo:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1530
            SystemBrowser default browseImplementorsMatching:selector
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1531
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1532
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
  1533
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1534
    "Modified: / 01-09-2017 / 14:18:52 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1535
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1536
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1537
browseReferencesToClass
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1538
    "open a browser after asking for a class"
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1539
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1540
    |class|
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1541
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1542
    class := Dialog
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1543
                    requestClassName:(resources string:'Browse References to Class named (Tab for Completion):')
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1544
                    okLabel:(resources string:'Browse')
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1545
                    initialAnswer:''.
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1546
    class notNil ifTrue:[
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1547
        self withWaitCursorDo:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1548
            SystemBrowser default browseReferendsOf:class
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1549
        ]
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1550
    ].
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1551
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1552
    "Modified: / 01-09-2017 / 14:19:03 / cg"
14943
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1553
!
bf27145ad88c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14752
diff changeset
  1554
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1555
browseResources
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1556
    "open a resource- browser after asking for a resource string"
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
    |box resourceHolder valueHolder component rsrc value t anyString|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1559
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1560
    anyString := resources string:'* any *'.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1561
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1562
    resourceHolder := ValueHolder newString.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1563
    valueHolder := '*' asValue.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1564
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1565
    box := DialogBox new.
6637
874c6de40070 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6621
diff changeset
  1566
    box label:(resources string:'Resource search:').
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1567
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1568
                    addTextLabel:(resources stringWithCRs:'Search for methods which contain a\particular resource specification')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1569
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1570
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1571
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1572
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1573
                    addTextLabel:(resources stringWithCRs:'Resource symbol (empty for any; no matchPattern allowed):')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1574
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1575
    component :=  box addComboBoxOn:resourceHolder tabable:true.
3014
cb531619c185 Don't use obsolete methods.
Stefan Vogel <sv@exept.de>
parents: 3003
diff changeset
  1576
    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
  1577
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1578
    component := box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1579
                    addTextLabel:(resources stringWithCRs:'Resource value (* for any; matchPattern is allowed):')
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  1580
                    adjust:#left.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1581
    box addInputFieldOn:valueHolder tabable:true.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1582
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1583
    box addVerticalSpace:10.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1584
    box addHelpButtonFor:'programming/language.html#RESOURCEDEFS'.
2048
f8c010698b75 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2047
diff changeset
  1585
    box addAbortAndOkButtons.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1586
3293
d7b925f89a7b dont use explicit showAtPointer
Claus Gittinger <cg@exept.de>
parents: 3288
diff changeset
  1587
    box open.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1588
    box destroy.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1589
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1590
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1591
        rsrc := resourceHolder value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1592
        value := valueHolder value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1593
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1594
        (rsrc size == 0 or:[rsrc = '*' or:[rsrc = anyString]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1595
            t := 'methods with any resource'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1596
            rsrc := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1597
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1598
            t := 'methods with #' , rsrc , '-resource'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1599
            rsrc := rsrc withoutSeparators asSymbol
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1600
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1601
        (value size == 0 or:[value = '*']) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1602
            t := t , ' and any value'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1603
            value := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1604
        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1605
            t := t , ' and value ' , value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1606
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1607
        self withWaitCursorDo:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1608
            SystemBrowser default
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1609
                browseForResource:rsrc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1610
                containing:value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1611
                in:(Smalltalk allClasses)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1612
                title:t
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1613
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1614
    ].
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1615
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1616
    "Modified: / 01-09-2017 / 14:19:11 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1617
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1618
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1619
browseSenders
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1620
    "open a senders- browser after asking for a selector"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1621
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1622
    |dialog selector|
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1623
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1624
    Tools::SearchDialog notNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1625
        "/ use a better dialog
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1626
        dialog := Tools::SearchDialog new
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1627
            setupToAskForMethodSearchTitle:(resources string:'Selector to browse senders of:\(TAB for completion; matchPattern allowed)')
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1628
            forBrowser:nil
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1629
            searchWhat:#selector searchArea:#everywhere
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1630
            withCaseIgnore:true withMatch:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1631
            withMethodList:false
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1632
            allowFind:false allowBuffer:false allowBrowser:true
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1633
            withTextEntry:true.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1634
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1635
        dialog askThenDo:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1636
            |classes methods isMethod selector ignoreCase match|
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1637
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1638
            (classes := dialog classesToSearch) notEmptyOrNil ifTrue:[
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1639
                (selector := dialog selectorToSearch) notEmptyOrNil ifTrue:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1640
                    SystemBrowser default
11270
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1641
                        browseAllCallsOn:selector 
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1642
                        in:classes
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1643
                        ignoreCase:(dialog searchIgnoringCase)
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1644
                        match:(dialog searchWithMatch)    
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1645
                        title:(SystemBrowser classResources string:'senders of: %1' with:selector).
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1646
                ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1647
            ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1648
        ].
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1649
        ^ self.
3e937f58150c changed:
Claus Gittinger <cg@exept.de>
parents: 10907
diff changeset
  1650
    ].
3369
ac3ce702451c senders/implementors: Tab completion
Claus Gittinger <cg@exept.de>
parents: 3362
diff changeset
  1651
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1652
    selector := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1653
                    requestSelector:(resources string:'Browse Senders of (Tab for Completion):')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1654
                    okLabel:(resources string:'Browse')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1655
                    initialAnswer:''.
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  1656
    selector notEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1657
        self withWaitCursorDo:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1658
            SystemBrowser default browseAllCallsOn:selector
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1659
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1660
    ].
3442
38a5ec1d3add *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 3423
diff changeset
  1661
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1662
    "Modified: / 01-09-2017 / 14:19:27 / cg"
2005
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
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1665
browseUnboundGlobals
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1666
    "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
  1667
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1668
    self withWaitCursorDo:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1669
        SystemBrowser default
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1670
            browseReferendsOfUnboundGlobalsWithTitle:(resources string:'References to unbound global variables')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1671
            warnIfNone:true
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1672
    ]
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1673
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1674
    "Modified: / 01-09-2017 / 14:19:31 / cg"
4199
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1675
!
f9bc3cbc38f7 added browse refs to unbound globals.
Claus Gittinger <cg@exept.de>
parents: 4155
diff changeset
  1676
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1677
browseUndeclared
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1678
    "open a browser on methods refering to undeclared variables"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1679
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1680
    self withWaitCursorDo:[
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1681
        SystemBrowser default
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1682
            browseReferendsOf:(Smalltalk undeclaredPrefix , '*')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1683
            title:(resources string:'References to undeclared variables')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1684
            warnIfNone:true
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1685
    ]
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1686
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1687
    "Modified: / 01-09-2017 / 14:19:34 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1688
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1689
3778
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1690
clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1691
    "remove all undeclared variables"
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1692
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1693
    Smalltalk clearUndeclaredVariables
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1694
!
5595e6f544ab undeclared variable stuff
penk
parents: 3741
diff changeset
  1695
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1696
newSystemBrowserClass
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1697
    |newSystemBrowserClass|
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1698
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1699
    newSystemBrowserClass := Tools::NewSystemBrowser ? NewSystemBrowser.
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1700
    newSystemBrowserClass isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1701
        self warn:'This needs the NewSystemBrowser to be loaded.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1702
        AbortOperationRequest raise.
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1703
    ].
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1704
    ^ newSystemBrowserClass
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1705
!
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1706
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1707
removeAllBreakAndTracePoints
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1708
    "remove all break- and trace points"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1709
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1710
    self
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1711
        withCursor:Cursor execute
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1712
        do:[ 
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1713
            MessageTracer cleanup.
14534
7a7c0fbe16f8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14475
diff changeset
  1714
            MethodWithBreakpoints allBreakpointedMethods do:[:m | m restoreOriginalMethod]
13146
a71f344ebbb4 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13143
diff changeset
  1715
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1716
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1717
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1718
startClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1719
    "open a classBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1720
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1721
    SystemBrowser default askThenBrowseClass
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1722
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1723
    "Modified: / 01-09-2017 / 14:19:37 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1724
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1725
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1726
startClassBrowserOnChangedClasses
2854
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1727
    "open a classBrowser on the changeSet"
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1728
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1729
    self newSystemBrowserClass openOnClassesInChangeSet
2854
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1730
!
ac97ea47bb08 browse changed classes added
Claus Gittinger <cg@exept.de>
parents: 2845
diff changeset
  1731
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1732
startClassBrowserOnChangedMethods
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1733
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1734
5597
b36a1516aaa5 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5581
diff changeset
  1735
    self newSystemBrowserClass openOnMethodsInChangeSet
3100
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1736
!
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1737
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1738
startClassBrowserOnChanges
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1739
    "open a classBrowser on the changeSet"
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1740
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1741
    ^ self startClassBrowserOnChangedClasses
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1742
!
8867c882329c added 'browse changed methods' function.
Claus Gittinger <cg@exept.de>
parents: 3079
diff changeset
  1743
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1744
startClassHierarchyBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1745
    "open a classHierarchyBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1746
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1747
    SystemBrowser default askThenBrowseClassHierarchy
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1748
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1749
    "Modified: / 01-09-2017 / 14:19:40 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1750
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1751
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1752
startFullClassBrowser
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1753
    "open a fullClass systemBrowser; asks for class"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1754
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1755
    SystemBrowser default askThenBrowseFullClassProtocol
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1756
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  1757
    "Modified: / 01-09-2017 / 14:19:42 / cg"
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1758
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1759
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1760
startMonticelloRepositoryBrowser
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1761
    "open a monticello repository browser. Unfinished & experimental."
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1762
11468
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1763
    MCRepositoryBrowser isNil ifTrue:[
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1764
        Smalltalk loadPackage:'stx:goodies/monticello'
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1765
    ].
3d585b53fb82 changed:
Claus Gittinger <cg@exept.de>
parents: 11417
diff changeset
  1766
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1767
    MCRepositoryBrowser open.
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1768
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1769
    "Created: / 25-11-2011 / 17:55:18 / cg"
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1770
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  1771
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1772
startRemoteImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1773
    "open a remoteImage browser; asks for hostname.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1774
     The remote host must have an st/x running with remote browsing enabled.
4491
b5f8412a83e2 comments
Claus Gittinger <cg@exept.de>
parents: 4479
diff changeset
  1775
     Sorry, for now, only the old browser supports remote browsing."
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1776
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1777
    |hostName|
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1778
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1779
    hostName := Dialog request:'Remote Host:'.
8428
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1780
    hostName isEmptyOrNil ifTrue:[^ self].
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1781
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1782
    SystemBrowser openOnRemoteImageOnHost:hostName port:nil.
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1783
!
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1784
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1785
startSnapshotImageBrowser
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1786
    "open a snapshotImage browser; asks for filename.
4491
b5f8412a83e2 comments
Claus Gittinger <cg@exept.de>
parents: 4479
diff changeset
  1787
     Sorry, for now, only the old browser supports remote browsing."
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1788
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1789
    |imageFileName|
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1790
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1791
    imageFileName := Dialog requestFileName:'Name of Snapshot Image File:' default:'st.img' pattern:'*.img;*.sav'.
8428
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1792
    imageFileName isEmptyOrNil ifTrue: [^ self ].
124b2613d6aa *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8421
diff changeset
  1793
3575
c35b9ba0092c snapshotImage and remoteImage browser
Claus Gittinger <cg@exept.de>
parents: 3572
diff changeset
  1794
    SystemBrowser openOnSnapShotImage:imageFileName
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1795
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  1796
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1797
!AbstractLauncherApplication methodsFor:'user actions-demos'!
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1798
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1799
startPDALauncher
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1800
    self startRemoteLauncherWithSetup:[:newDisplay | newDisplay bePDA].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1801
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1802
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1803
startRemoteLauncher
3035
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1804
    self startRemoteLauncherWithSetup:[:newDisplay | ].
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1805
!
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1806
55824593b14c some more pda support
Claus Gittinger <cg@exept.de>
parents: 3032
diff changeset
  1807
startRemoteLauncherWithSetup:aSetupBlock
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
  1808
    |host remoteDisplay remoteDisplayClass|
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1809
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1810
    host := Dialog
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1811
                request:(resources string:'Remote Launcher on which display:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1812
                initialAnswer:'{hostName}:0'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1813
                initialSelection:(1 to:10).
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  1814
    host notEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1815
        (host includes:$:) ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1816
            host := (host , ':0')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1817
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1818
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1819
        remoteDisplayClass := XWorkstation.
2754
565abad0ef64 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2737
diff changeset
  1820
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1821
"/        "/ 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
  1822
"/        "/ (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
  1823
"/        "/ 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
  1824
"/
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1825
"/        "/ only simulated GL can be done remote (i.e. not on SGI)
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  1826
"/        (Screen current supportsGLDrawing
2755
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1827
"/        and:[Screen current isTrueGL not])
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1828
"/        ifTrue:[
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1829
"/            remoteDisplayClass := GLXWorkstation.
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1830
"/        ].
48769b1546d8 use new utility method to start a remote application
Claus Gittinger <cg@exept.de>
parents: 2754
diff changeset
  1831
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1832
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1833
            remoteDisplay := remoteDisplayClass newDispatchingFor:host.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1834
        ] on:Screen deviceOpenErrorSignal do:[:ex|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1835
            self warn:'Could not connect to display: ''' , host , '''.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1836
            ^ self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1837
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1838
        aSetupBlock value:remoteDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1839
        Screen currentScreenQuerySignal
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1840
            answer:remoteDisplay
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1841
            do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1842
                self class open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1843
            ]
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1844
    ].
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1845
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  1846
    "Created: / 10-09-1998 / 11:48:42 / cg"
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  1847
    "Modified: / 17-02-2017 / 08:25:56 / cg"
2038
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1848
! !
2f58a17935b9 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2037
diff changeset
  1849
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1850
!AbstractLauncherApplication methodsFor:'user actions-file'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1851
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1852
exit
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1853
    "saves a snapshot image and exits, after asking for a fileName"
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1854
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1855
    |fileName saveAndExit box|
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1856
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1857
    box := EnterBox2 title:(resources string:'Save image before exiting?')
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1858
        okText:(resources string:'Exit')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1859
        abortText:(resources string:'Cancel')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1860
        action:[:str | saveAndExit := false].
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1861
    box label: (resources string:'Exiting ST/X').
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1862
    box initialText: ObjectMemory nameForSnapshot.
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1863
    box okText2:(resources string:'Save & Exit') action2:[:str|fileName := str. saveAndExit := true].
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1864
    box showAtPointer.
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1865
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1866
    saveAndExit notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1867
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1868
            saveAndExit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1869
                self saveImageAs:fileName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1870
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1871
            Smalltalk exit.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1872
        ] on:SnapshotError do:[:ex|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1873
            "do not exit when snapshot writing fails"
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1874
            self warn:ex description.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1875
        ]
16341
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1876
    ].
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1877
    
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1878
    saveAndExit ~~ true ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1879
        "/ not saved - see if settings changed
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1880
        UserPreferences current isModified ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1881
            (Dialog confirm:(resources string:'Save changed settings before exiting?')) ifTrue:[
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1882
                SettingsDialog saveSettingsAsDefaultSettings 
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1883
            ]
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1884
        ]
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1885
    ].
26764d7fb639 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16331
diff changeset
  1886
    
5989
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1887
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1888
    "Modified: / 23.4.1998 / 18:37:46 / cg"
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1889
!
76628a691cdc Do not move messages to superclass (where they are sent)
Stefan Vogel <sv@exept.de>
parents: 5944
diff changeset
  1890
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1891
fileLoadPackage
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1892
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1893
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1894
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1895
     add remote packages (central goody repository?),
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1896
     add a description text view, showing more info about the package (from where?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1897
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1898
    self class openLoadPackageDialog.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1899
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  1900
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1901
saveImageAs: aFileName
6233
b2a1e0b092f0 Make snapshot writing more robust against errors.
Stefan Vogel <sv@exept.de>
parents: 6175
diff changeset
  1902
    "save image in aFilename.
b2a1e0b092f0 Make snapshot writing more robust against errors.
Stefan Vogel <sv@exept.de>
parents: 6175
diff changeset
  1903
     Sender has to handle SnapshotError"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1904
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1905
    aFileName notNil ifTrue:[
11684
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1906
        self withWriteCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1907
            ObjectMemory snapShotOn:aFileName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1908
        ].
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1909
    ].
11684
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1910
f405935b2a6e changed: #saveImageAs:
Claus Gittinger <cg@exept.de>
parents: 11490
diff changeset
  1911
    "Modified: / 27-07-2012 / 09:46:19 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1912
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1913
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  1914
!AbstractLauncherApplication methodsFor:'user actions-help'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1915
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1916
showBookPrintDocument
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1917
    "open an HTML browser on the 'book'-printing document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1918
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1919
    self showDocumentation:'BOOK.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1920
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1921
8314
bfc7e0a01c4b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8298
diff changeset
  1922
showCredits
13950
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1923
    self showDocumentation:'credits.html'
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1924
05f423b4291a Fix in AbstractLauncherApplication>>#showCredits
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13918
diff changeset
  1925
    "Modified: / 17-02-2014 / 21:20:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
8314
bfc7e0a01c4b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8298
diff changeset
  1926
!
bfc7e0a01c4b *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8298
diff changeset
  1927
6175
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1928
showPortInfo
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1929
    |portNr url|
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1930
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1931
    portNr := Dialog request:'Port Number:'.
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1932
    portNr isEmptyOrNil ifTrue:[^ self].
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1933
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1934
    url := 'http://www.grc.com/port_' , portNr printString , '.htm'.
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1935
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1936
        HTMLDocumentView openFullOnURL:url.
6175
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1937
    ]
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1938
!
f1f9174f1f03 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6161
diff changeset
  1939
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1940
showRFC
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1941
    |rfc url|
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1942
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1943
    rfc := Dialog request:'RFC Number ("index" for list):'.
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1944
    rfc isEmptyOrNil ifTrue:[^ self].
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1945
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1946
    rfc = 'index' ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1947
        url := 'http://www.faqs.org/rfcs/'.
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1948
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1949
        url := 'http://www.faqs.org/rfcs/rfc' , rfc printString , '.html'.
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  1950
    ].
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1951
    self withWaitCursorDo:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  1952
        HTMLDocumentView openFullOnURL:url.
4448
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1953
    ]
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1954
!
3fe9b324e809 showRFC added
Claus Gittinger <cg@exept.de>
parents: 4436
diff changeset
  1955
8117
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1956
showTipOfTheDay
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1957
    "open a tip-of-the-day window"
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1958
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1959
    DidYouKnowTipViewer open
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1960
!
7043c5e27bee tip of the day
Claus Gittinger <cg@exept.de>
parents: 8115
diff changeset
  1961
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1962
startClassDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1963
    "open an HTML browser on the 'classDoc/TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1964
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1965
    self showDocumentation:'classDoc/TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1966
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1967
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1968
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1969
startDocumentationIndex
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1970
    "open an HTML browser on the 'index' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1971
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1972
    self showDocumentation:'index.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1973
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1974
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1975
startDocumentationTool
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1976
    "open an HTML browser on the 'TOP' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1977
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1978
    self showDocumentation:'TOP.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1979
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1980
!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  1981
15385
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1982
startLauncherDocumentation
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1983
    "open an HTML browser on the launcher section in the 'tools/TOP' document"
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1984
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1985
    self showDocumentation:'tools/misc/TOP.html#LAUNCHER'
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1986
!
8d0380a77aba class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15367
diff changeset
  1987
8625
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1988
startProgrammersGuide
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1989
    "open an HTML browser on the 'programers guide' document"
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1990
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1991
    self showDocumentation:'programming/TOP.html'
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1992
!
40edf78ff6aa changed #startProgrammersGuide
Claus Gittinger <cg@exept.de>
parents: 8622
diff changeset
  1993
8769
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1994
startSmalltalkTutorial
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1995
    "open an HTML browser on 'doc\books\JoyOfST\IntroToST.html' document"
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1996
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1997
    self showDocumentation:'books/JoyOfST/IntroToST.html'
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1998
!
1698bfb7f08e added: #startSmalltalkTutorial
Claus Gittinger <cg@exept.de>
parents: 8761
diff changeset
  1999
8401
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  2000
startToolsDocumentation
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  2001
    "open an HTML browser on the 'tools/TOP' document"
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  2002
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  2003
    self showDocumentation:'tools/TOP.html'
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  2004
!
4e41a3ae1904 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8385
diff changeset
  2005
5071
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  2006
startTutorial
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  2007
    "open an HTML browser on the 'getstart/tutorial.html' document"
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  2008
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  2009
    self showDocumentation:'getstart/tutorial.html'
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  2010
!
20afba5cc3e6 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5061
diff changeset
  2011
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2012
startWhatsNewDocumentation
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2013
    "open an HTML browser on the 'whatsNew.html' document"
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2014
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2015
    self showDocumentation:'whatsNew.html'
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2016
2296
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  2017
!
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  2018
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  2019
startWhatsNewSTX
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  2020
    "open an HTML browser on the 'relNotes.html' document"
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  2021
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  2022
    self showDocumentation:'newFeatures.html'
cb2a81a506ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2294
diff changeset
  2023
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2024
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2025
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  2026
!AbstractLauncherApplication methodsFor:'user actions-system'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2027
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2028
compressingGarbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2029
    "perform a compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2030
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2031
    self withWaitCursorDo:[ObjectMemory verboseGarbageCollect]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2032
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2033
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2034
7899
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  2035
flushCachedResources
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  2036
    "flush all cached resources (e.g. translations)."
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  2037
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  2038
    Smalltalk changed:#Language.  "this flushes everything"
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  2039
!
f33a16fa5301 New menu entry to reload the resource files
Stefan Vogel <sv@exept.de>
parents: 7882
diff changeset
  2040
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2041
garbageCollect
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2042
    "perform a non-compressing garbageCollect"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2043
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2044
    self withWaitCursorDo:[ObjectMemory reclaimSymbols]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2045
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2046
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2047
7929
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2048
objectModuleDialog
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2049
    "opens a moduleInfo dialog"
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2050
7945
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  2051
    Tools::ObjectModuleInformation notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2052
        self openApplication:#'Tools::ObjectModuleInformation'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2053
        ^ self.
7945
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  2054
    ].
50d6071ecb8d changed #objectModuleDialog
Claus Gittinger <cg@exept.de>
parents: 7929
diff changeset
  2055
7929
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2056
    ^ LauncherDialogs objectModuleDialog
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2057
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2058
    "Modified: / 31.7.1998 / 17:33:24 / cg"
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2059
!
04fe3c979a94 changed #objectModuleDialog - fix method category
Stefan Vogel <sv@exept.de>
parents: 7899
diff changeset
  2060
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2061
startStopEventTrace
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2062
    "start/stop event tracing for a particular view"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2063
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2064
    |v wg|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2065
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2066
    v := Screen current viewFromUser.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2067
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2068
        v := v topView.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2069
        wg := v windowGroup.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2070
        wg notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2071
            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2072
            "/ toggle eventTrace in its windowGroup
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2073
            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2074
            wg traceEvents:(wg traceEvents not)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2075
        ]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2076
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2077
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2078
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  2079
!AbstractLauncherApplication methodsFor:'user actions-tools'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2080
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  2081
inspectGlobalVariables
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  2082
    "inspect globals"
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  2083
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  2084
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2085
        "/ looks nicer...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2086
        WorkspaceApplication openWithGlobalsInspector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2087
        ^ self.
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  2088
    ].
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  2089
    Smalltalk inspect
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  2090
!
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  2091
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2092
inspectWorkspaceVariables
2210
efe47610b7ef checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2209
diff changeset
  2093
    "inspect workspace variables"
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2094
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  2095
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2096
        "/ looks nicer...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2097
        WorkspaceApplication openWithWorkspaceVariableInspector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2098
        ^ self.
9084
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  2099
    ].
3b0b89c91c71 changed:
Claus Gittinger <cg@exept.de>
parents: 9052
diff changeset
  2100
    "/ Workspace workspaceVariables inspect
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2101
!
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2102
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2103
newProject
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2104
    "creates a new project & opens a projectView for it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2105
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2106
    Project notNil ifTrue: [(ProjectView for: Project new) open]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2107
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2108
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2109
openEvaluationWorkspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2110
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2111
        ^ WorkspaceApplication openEvaluationWorkspace
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2112
    ].
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2113
    ^ self openApplication:Workspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2114
!
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2115
8319
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  2116
openMyWorkspace
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  2117
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2118
        ^ WorkspaceApplication openMyWorkspace
8319
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  2119
    ].
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  2120
    ^ self openApplication:Workspace
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  2121
!
d2f8c4cafb80 +openMyWorkspace
Claus Gittinger <cg@exept.de>
parents: 8314
diff changeset
  2122
15236
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2123
openRegularWorkspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2124
    WorkspaceApplication notNil ifTrue:[
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2125
        ^ WorkspaceApplication openRegularWorkspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2126
    ].
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2127
    ^ self openApplication:Workspace
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2128
!
92e7ef5d694e class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14943
diff changeset
  2129
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2130
openSystemWorkspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2131
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2132
        ^ WorkspaceApplication openSystemWorkspace
8290
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2133
    ].
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2134
    ^ self openApplication:Workspace
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2135
!
c75940851eec *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8160
diff changeset
  2136
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2137
openTerminal
5298
578f2afad9da terminal application
Claus Gittinger <cg@exept.de>
parents: 5277
diff changeset
  2138
    TerminalApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2139
        ^ TerminalApplication open
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2140
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2141
    self openApplication:#VT100TerminalView
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2142
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2143
15275
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2144
openTextDiffTool
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2145
    Tools::TextDiff2Tool isNil ifTrue:[
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2146
        Dialog warn:'Tools::TextDiff2Tool is missing'.
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2147
        ^ self        
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2148
    ].
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2149
    ^Tools::TextDiff2Tool 
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2150
        openOn:'Paste some text here' label:'text1'
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2151
        and:'Paste the other text text here' label:'text2'
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2152
!
e77c12208abf class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15236
diff changeset
  2153
3158
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2154
openWorkspace
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2155
    WorkspaceApplication notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2156
        ^ WorkspaceApplication open
3158
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2157
    ].
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2158
    ^ self openApplication:Workspace
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2159
!
70963eea944a new workspace
Claus Gittinger <cg@exept.de>
parents: 3140
diff changeset
  2160
2207
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2161
removeAllWorkspaceVariables
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2162
    "remove workspace variables"
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2163
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2164
    Workspace removeAllWorkspaceVariables
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2165
!
84d23e553268 support for workspace variables
Claus Gittinger <cg@exept.de>
parents: 2206
diff changeset
  2166
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2167
selectProject
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2168
    "asks for and switch to another project"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2169
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2170
    |list box|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2171
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2172
    Project notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2173
        list := Project allInstances.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2174
        box := ListSelectionBox new.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2175
        box list:(list collect:[:p | p name]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2176
        box title:(resources string:'Select a project').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2177
        box action:[:selection |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2178
            |project|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2179
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2180
            project := list detect:[:p | p name = selection] ifNone:[nil].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2181
            project isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2182
                transcript notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2183
                    transcript showCR:'No such project.'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2184
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2185
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2186
                project showViews.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2187
                Project current:project
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2188
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2189
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2190
        box open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2191
        box destroy
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2192
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2193
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2194
3408
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2195
startBugMessages
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2196
    "open the bug reporter"
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2197
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2198
    Expecco::ExpeccoNetAPI notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2199
        Expecco::ExpeccoNetAPI reportCodeReview.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2200
        ^ self
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2201
    ].
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2202
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2203
    BugGUI notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2204
        self openApplication:#BugGUI
8643
e69b9268f450 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8625
diff changeset
  2205
    ].
3408
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2206
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2207
    "Modified: / 17.10.1998 / 14:38:18 / cg"
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2208
!
12215beef308 new Icon in NewLauncher for Bug messages
penk
parents: 3401
diff changeset
  2209
3362
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  2210
startChangeSetBrowser
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2211
    "open a change Set Browser on the changes in the system"
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2212
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  2213
    ^ UserPreferences current changeSetBrowserClass open
15506
af054eb73ccf Fix in AbstractLauncherApplication>>startChangeSetBrowser: use preferred changeset browser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15495
diff changeset
  2214
af054eb73ccf Fix in AbstractLauncherApplication>>startChangeSetBrowser: use preferred changeset browser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15495
diff changeset
  2215
    "Created: / 05-11-2001 / 18:04:05 / cg"
af054eb73ccf Fix in AbstractLauncherApplication>>startChangeSetBrowser: use preferred changeset browser
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 15495
diff changeset
  2216
    "Modified: / 05-03-2015 / 06:57:59 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3362
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  2217
!
e02cc20dd18f checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3326
diff changeset
  2218
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2219
startChangesBrowser
15700
b938df38917c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15699
diff changeset
  2220
    "open a changebrowser on the change file - either new or old GUI, depending on userPrefs"
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2221
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2222
    self openApplication:(UserPreferences current changesBrowserClass)
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2223
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2224
    "Modified: / 17.10.1998 / 14:38:18 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2225
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2226
8298
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2227
startInternationalLanguageTranslationEditor
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2228
    "open the language-string editor (english/german/spanish etc.)"
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2229
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2230
    self openApplication:#'Tools::InternationalLanguageTranslationEditor'
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2231
!
644a1568da1f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8290
diff changeset
  2232
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2233
startNewChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2234
    "opens the new changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2235
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2236
    self openApplication:#NewChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2237
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2238
    "Created: / 6.6.1998 / 19:47:26 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2239
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2240
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2241
startNewLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2242
    "opens the new launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2243
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2244
    NewLauncher isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2245
        ^ 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
  2246
    ].
14075
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2247
    Display withoutExitingOnLastCloseDo:[
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2248
        NewLauncher openAt:(self window origin)
710990d62d23 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13950
diff changeset
  2249
    ].
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2250
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2251
2111
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2252
startOldChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2253
    "opens the old changeBrowser"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2254
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2255
    self openApplication:#ChangesBrowser
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2256
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2257
    "Created: / 6.6.1998 / 19:47:26 / cg"
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2258
!
b36bdfb0af38 moved startChangesBrowser from NewLauncher to here.
Claus Gittinger <cg@exept.de>
parents: 2110
diff changeset
  2259
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2260
startOldLauncher
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2261
    "opens the old launcher"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2262
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2263
    Launcher isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2264
        ^ 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
  2265
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2266
    Launcher openAt:(self window origin)
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2267
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2268
!
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2269
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2270
startSUnitTestRunner
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2271
    "open the configured SUnit test runner"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2272
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2273
    self openApplication:(UserPreferences current testRunnerClass)
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2274
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2275
    "Modified: / 17.10.1998 / 14:38:18 / cg"
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2276
!
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2277
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  2278
startSUnitTestRunner1
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2279
    "open the SUnit test runner"
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2280
3037
0d452d54bf04 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 3035
diff changeset
  2281
    self openApplication:#TestRunner
2883
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2282
bd88b8b95b29 SUNit stuff added
Claus Gittinger <cg@exept.de>
parents: 2866
diff changeset
  2283
    "Modified: / 17.10.1998 / 14:38:18 / cg"
5016
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2284
!
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2285
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2286
startSmaCCParserGenerator
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2287
    "open the SmaCC-ParserGenerator UI"
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2288
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2289
    self openApplication:#'SmaCC::SmaCCParserGenerator'
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2290
8c5784f76fa3 SmaCCParsergenerator
Claus Gittinger <cg@exept.de>
parents: 4936
diff changeset
  2291
    "Modified: / 17.10.1998 / 14:38:18 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2292
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2293
4862
1838e1e01c92 method category rename
Claus Gittinger <cg@exept.de>
parents: 4859
diff changeset
  2294
!AbstractLauncherApplication methodsFor:'user actions-windows'!
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2295
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2296
allTopViewsDo:aBlock
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2297
    |setOfViews currentScreen|
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2298
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
  2299
    setOfViews := Project current views asIdentitySet.
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2300
    setOfViews addAll:(Project defaultProject views).
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2301
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2302
    currentScreen := Screen current.
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2303
    setOfViews do:[:eachTopView |
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2304
        eachTopView device == currentScreen ifTrue:[
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2305
            aBlock value:eachTopView
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2306
        ]
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2307
    ]
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2308
!
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2309
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2310
askForAnotherDisplay
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2311
    "ask for some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2312
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2313
    |displayName|
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2314
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2315
    displayName := Dialog request:'Display:' initialAnswer:(Screen default displayName).
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2316
    displayName isEmptyOrNil ifTrue:[^ nil].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2317
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2318
    ^ XWorkstation newDispatchingFor:displayName.
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2319
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2320
13654
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2321
bringAllWindowsOntoScreen
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2322
    self allTopViewsDo:[:eachTopView | self bringWindowOntoScreen:eachTopView]
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2323
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2324
    "
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2325
     Transcript topView application bringAllWindowsOntoScreen
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2326
    "
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2327
!
e33fa0be5522 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13637
diff changeset
  2328
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2329
bringWindow:aWindow intoBounds:bounds
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2330
    "shift & resize a view to be completely inside bounds."
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2331
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2332
    |topView oldOrg newOrg oldCorner newCorner delta|
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2333
    
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2334
    topView := aWindow topView.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2335
    oldOrg := newOrg := topView origin.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2336
    oldCorner := newCorner := topView corner. 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2337
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2338
    (bounds containsPoint:oldOrg) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2339
        newOrg := bounds origin + (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2340
        delta := newOrg - oldOrg.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2341
        newCorner := oldCorner + delta.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2342
    ].    
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2343
    (bounds containsPoint:newCorner) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2344
        newCorner := bounds corner - (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2345
        delta := newCorner - oldCorner.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2346
        newOrg = oldOrg ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2347
            newOrg := newOrg + delta.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2348
            (bounds containsPoint:newOrg) ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2349
                newOrg := bounds origin + (10@10).
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2350
            ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2351
        ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2352
    ].
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2353
    topView 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2354
        raiseDeiconified;
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2355
        origin:newOrg corner:newCorner.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2356
!
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2357
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2358
bringWindowOntoScreen:aWindow 
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2359
    "shift & resize a view to be visible.
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2360
     If there are multiple screens,bring them all onto the screen where the launcher is"
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2361
    
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2362
    |allBounds bounds myDevice|
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2363
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2364
    myDevice := self device.
16983
fcf829cdb3fc #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16974
diff changeset
  2365
    allBounds := myDevice monitorBounds. "At:aWindow center"
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2366
    allBounds notEmptyOrNil ifTrue:[
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2367
        bounds := allBounds 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2368
                detect:[:bounds | bounds containsPoint:self window center ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2369
                ifNone:[ nil ].
16114
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2370
    ].
Claus Gittinger <cg@exept.de>
parents: 16111
diff changeset
  2371
    bounds isNil ifTrue:[
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2372
        bounds := 0@0 extent:myDevice usableExtent.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2373
    ].
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2374
    self bringWindow:aWindow intoBounds:bounds
12568
e992401c1f07 bring window onto screen
Claus Gittinger <cg@exept.de>
parents: 12500
diff changeset
  2375
!
e992401c1f07 bring window onto screen
Claus Gittinger <cg@exept.de>
parents: 12500
diff changeset
  2376
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2377
deIconifyAllWindows
13696
94a519c56f57 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13654
diff changeset
  2378
    self allTopViewsDo:[:eachTopView | eachTopView expand; raise].
94a519c56f57 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13654
diff changeset
  2379
    self window raise.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2380
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2381
    "
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2382
     Transcript topView application deIconifyAllWindows
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2383
    "
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2384
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2385
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2386
findAndDestroyWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2387
    "find a window (by name) and destroy it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2388
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2389
    |v|
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2390
    v := self findWindow:'Select window to close:'.
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2391
    v notNil ifTrue:[v destroy]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2392
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2393
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2394
findAndMigrateWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2395
    "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
  2396
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2397
    |possibleGroups v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2398
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2399
    possibleGroups := WindowGroup allInstances select:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2400
                                        eachGroup graphicsDevice == Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2401
                                        and:[eachGroup isModal not
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2402
                                        and:[eachGroup topViews notEmptyOrNil]]].
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2403
    possibleGroups isEmpty ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2404
        self information:'No windows found which could be migrated to some other display.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2405
        ^ self
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2406
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2407
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2408
    v := self findWindow:'Select window to migrate:' windowGroupFilter:possibleGroups.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2409
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2410
        self migrateWindow:v topView
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2411
    ]
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2412
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2413
    "Modified: / 17-02-2017 / 08:25:38 / cg"
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2414
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2415
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2416
findAndMigrateWindowBack
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2417
    "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
  2418
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2419
    |possibleGroups v|
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2420
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2421
    possibleGroups := WindowGroup allInstances select:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2422
                                        eachGroup graphicsDevice ~~ Screen current
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2423
                                        and:[eachGroup isModal not
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2424
                                        and:[eachGroup topViews notEmptyOrNil]]].
6264
039dc5c1710b slight code cleanup
Claus Gittinger <cg@exept.de>
parents: 6233
diff changeset
  2425
    possibleGroups isEmpty ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2426
        self information:'No windows are open on any other display.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2427
        ^ self
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2428
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2429
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2430
    v := self findWindow:'Select window to migrate back:' windowGroupFilter:possibleGroups.
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2431
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2432
        v windowGroup migrateTo:(Screen current)
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2433
    ]
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2434
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2435
    "Modified: / 17-02-2017 / 08:25:45 / cg"
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2436
!
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2437
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2438
findAndRaiseWindow
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2439
    "find a window (by name) and raise it"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2440
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2441
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2442
4412
710b2097c588 dialog strings
Claus Gittinger <cg@exept.de>
parents: 4399
diff changeset
  2443
    v := self findWindow:'Select window to raise deiconified:'.
11417
3559223419d9 changed: #findAndRaiseWindow
Stefan Vogel <sv@exept.de>
parents: 11355
diff changeset
  2444
    v notNil ifTrue:[v raiseDeiconified; setForegroundWindow]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2445
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2446
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2447
fullScreenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2448
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2449
     save the contents of the whole screen."
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2450
    
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2451
    |mySensor|
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2452
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2453
    mySensor := self window sensor.
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2454
    mySensor ctrlDown ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2455
        ^ self fullScreenHardcopyUngrabbed
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2456
    ].
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2457
    Processor 
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2458
        addTimedBlock:[ self saveScreenImage:(Image fromScreen) defaultName:'screen' ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2459
        afterSeconds:(mySensor shiftDown ifTrue:5 ifFalse:1)
3326
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2460
!
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2461
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2462
fullScreenHardcopyUngrabbed
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2463
    "after a second (to allow redraw of views under menu ...),
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2464
     save the contents of the whole screen."
d6713cc88cde grab screen (shift/ctrl key behavior)
james
parents: 3325
diff changeset
  2465
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2466
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2467
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2468
                        |display image|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2469
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2470
                        display := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2471
                        image := Image
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2472
                            fromScreen:(0@0 corner:(display extent))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2473
                            on:display
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2474
                            grab:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2475
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2476
                        self
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2477
                            saveScreenImage:image
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2478
                            defaultName:'screen'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2479
                      ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2480
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2481
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2482
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2483
hardcopyOfView: aView
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2484
    "after a second (to allow redraw of views under menu ...),
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2485
     save a view's contents as bitmap image."
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2486
12500
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2487
    |top|
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2488
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2489
    top := aView topView.
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2490
    top raiseDeiconified; makeFullyVisible.
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2491
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2492
    "do a pushEvent, in case its me myself and I have to redraw first..."
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2493
    self enqueueDelayedAction:[
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2494
        Delay waitForSeconds:1.   "/ give view a chance to redraw itself.
12500
5e05cf44bd94 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12499
diff changeset
  2495
        self saveScreenImage:(Image fromView:top) defaultName:'hardcopy'
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2496
    ].
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2497
    aView windowGroup processExposeEvents
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2498
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2499
    "Created: / 27-04-2012 / 13:23:40 / cg"
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2500
!
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2501
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2502
iconifyAllWindows
12067
08fea14741d0 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12059
diff changeset
  2503
    self allTopViewsDo:[:eachTopView | eachTopView collapse]
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2504
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2505
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2506
migrateAllWindows
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2507
    "migrate all views to some other display"
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2508
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2509
    |anotherDisplay toMigrate|
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2510
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2511
    [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2512
        anotherDisplay := self askForAnotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2513
        anotherDisplay isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2514
            ^ self.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2515
        ].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2516
    ] on:Screen deviceOpenErrorSignal do:[:ex|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2517
        ^ self warn:'Cannot open display: ', ex parameter.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2518
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2519
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2520
    toMigrate := WindowGroup allInstances
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2521
        select:[:each | each graphicsDevice == Screen current
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2522
                        and:[each topViews notEmptyOrNil
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2523
                        and:[each isModal not]]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2524
               ].
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2525
    toMigrate do:[:eachGroup |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2526
        eachGroup migrateTo:anotherDisplay
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2527
    ]
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2528
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  2529
    "Modified: / 17-02-2017 / 08:25:51 / cg"
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2530
!
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2531
18019
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2532
migrateAllWindowsToDisplay
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2533
    "migrate all views to the current display"
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2534
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2535
    self migrateAllWindowsToDisplay:Display
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2536
!
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2537
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2538
migrateAllWindowsToDisplay:aDisplay
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2539
    "migrate all views to some other display"
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2540
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2541
    |toMigrate|
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2542
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2543
    toMigrate := WindowGroup allInstances
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2544
        select:[:each | each topViews notEmptyOrNil
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2545
                        and:[each isModal not]
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2546
               ].
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2547
    toMigrate do:[:eachGroup |
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2548
        eachGroup migrateTo:aDisplay
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2549
    ]
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2550
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2551
    "Modified: / 17-02-2017 / 08:25:51 / cg"
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2552
!
f3be6739098f #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 17713
diff changeset
  2553
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2554
migrateWindow:aWindow
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2555
    "migrate a view to some other display"
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2556
16747
7e55266044ea #BUGFIX by stefan
Stefan Vogel <sv@exept.de>
parents: 16687
diff changeset
  2557
    aWindow isModal ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2558
        self warn:'Sorry - I cannot migrate a modalBox; please migrate the owning View.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2559
        ^ self
2778
1e4bf8bf1d37 block migration of a modalBox
Claus Gittinger <cg@exept.de>
parents: 2775
diff changeset
  2560
    ].
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2561
    self 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2562
        migrateWindow:aWindow 
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2563
        withBackOption:(self confirm:'Show ''Return Back'' Button on the other display ?')
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2564
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2565
    "Modified (format): / 27-04-2012 / 13:15:23 / cg"
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2566
!
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2567
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2568
migrateWindow:aWindow withBackOption:withBackOption
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2569
    "migrate a view to some other display"
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2570
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2571
    |anotherDisplay wg here b|
2765
c85460a22ba8 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2763
diff changeset
  2572
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2573
    aWindow isTopView ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2574
        self information:'Cannot migrate this window'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2575
        ^ self
2766
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2576
    ].
b8f839bdb66a checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2765
diff changeset
  2577
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2578
    [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2579
        anotherDisplay := self askForAnotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2580
        anotherDisplay isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2581
            ^ self.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2582
        ].
3664
77fb767b5368 Changed Workstation initialization
Stefan Vogel <sv@exept.de>
parents: 3644
diff changeset
  2583
    ] on:Screen deviceOpenErrorSignal do:[:ex|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2584
        ^ self warn:'Cannot open display: ', ex parameter.
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2585
    ].
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2586
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2587
    wg := aWindow windowGroup.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2588
    wg migrateTo:anotherDisplay.
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2589
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2590
    withBackOption ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2591
        here := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2592
        b := Button onDevice:anotherDisplay.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2593
        b label:'Return window back to ' , here displayName.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2594
        b action:[ wg migrateTo:here. b destroy. ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2595
        b origin:0@0.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2596
        b open.
2775
f780a7d651e5 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 2766
diff changeset
  2597
    ].
2759
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2598
!
2afab235070a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2755
diff changeset
  2599
9364
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2600
openWindowTreeInspector
9932
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2601
    Tools::ViewTreeInspectorApplication isNil ifTrue:[
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2602
        Dialog warn:'Missing class: Tools::ViewTreeInspectorApplication'.
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2603
        ^ self.
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2604
    ].
14459
8bf63fa9cd85 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14445
diff changeset
  2605
    Tools::ViewTreeInspectorApplication openInPickModeAndRelease
9932
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2606
f6d155d70650 changed: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9875
diff changeset
  2607
    "Modified: / 12-05-2011 / 10:15:39 / cg"
9364
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2608
!
be7f9957ef94 added: #openWindowTreeInspector
Claus Gittinger <cg@exept.de>
parents: 9330
diff changeset
  2609
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2610
screenHardcopy
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2611
    "after a second (to allow redraw of views under menu ...),
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2612
     let user specify a rectangular area on the screen
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2613
     and save its contents."
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2614
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2615
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2616
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2617
                        |area|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2618
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2619
                        [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2620
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2621
                        area := Rectangle fromUser.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2622
                        (area width > 0 and:[area height > 0]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2623
                            Delay waitForSeconds:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2624
                            self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2625
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2626
                      ]
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2627
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:0.5)
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2628
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2629
    "Modified: / 18.8.1998 / 15:00:42 / cg"
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2630
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2631
6069
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2632
screenHardcopyWithDelay
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2633
    "after some time (to allow user to pull menu or similar...),
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2634
     let user specify a rectangular area on the screen
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2635
     and save its contents."
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2636
8385
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2637
    |area|
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2638
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2639
    [Screen current leftButtonPressed] whileTrue:[Delay waitForSeconds:0.05].
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2640
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2641
    Delay waitForSeconds:0.2. "/ to allow redraw under the menu area just uncovered
8385
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2642
    area := Rectangle fromUser.
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2643
    (area width > 0 and:[area height > 0]) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2644
        [
15367
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2645
            |oldLabel|
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2646
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2647
            oldLabel := self window label.
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2648
            10 to:4 by:-1 do:[:secs |
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2649
                self window label:(resources string:'%1 seconds until making a screenshot...' with:secs).
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2650
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2651
                Delay waitForSeconds:1. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2652
            ].
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2653
            3 to:1 by:-1 do:[:secs |
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2654
                self window label:(resources string:'%1 seconds until making a screenshot...' with:secs).
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2655
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2656
                Delay waitForSeconds:0.5. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2657
                Screen current beep. 
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2658
                Delay waitForSeconds:0.5.
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2659
            ].        
2391b2f27591 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15355
diff changeset
  2660
            self window label:oldLabel.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2661
            self saveScreenImage:(Image fromScreen:area) defaultName:'hardcopy'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2662
        ] fork
8385
635607a0dcc4 changed #screenHardcopyWithDelay
Claus Gittinger <cg@exept.de>
parents: 8381
diff changeset
  2663
    ]
6069
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2664
!
6b2903a57572 edit-button in screen-area abzug
Claus Gittinger <cg@exept.de>
parents: 6040
diff changeset
  2665
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2666
showFlyByWindowInformation
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2667
    "show infos about window under the mouse pointer"
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2668
7980
9da97ea4f99d changed #showFlyByWindowInformation
Claus Gittinger <cg@exept.de>
parents: 7977
diff changeset
  2669
    FlyByWindowInformation notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2670
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2671
            FlyByWindowInformation shownInformationOfViewUnderMouseUntilButtonIsPressed
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2672
        ] fork.
7980
9da97ea4f99d changed #showFlyByWindowInformation
Claus Gittinger <cg@exept.de>
parents: 7977
diff changeset
  2673
    ]
7977
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2674
!
c58175dd1ceb flyByWindowInfo
Claus Gittinger <cg@exept.de>
parents: 7945
diff changeset
  2675
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2676
startWindowTreeView
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2677
    "open a windowTree (on a picked topView)"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2678
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2679
    |v|
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2680
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2681
    WindowTreeView isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2682
        ^ 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
  2683
    ].
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2684
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2685
    v := self pickAView.
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2686
    v notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2687
        WindowTreeView openOn:v topView
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2688
    ]
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2689
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2690
!
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2691
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2692
startWindowTreeViewForAll
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2693
    "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
  2694
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2695
    WindowTreeView isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2696
        ^ self warn:'The WindowTreeView is not available in this release.'
2371
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2697
    ].
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2698
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2699
    WindowTreeView openOnAll
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2700
!
7ce8ba08aca1 added windowTree on all views on all screens
Claus Gittinger <cg@exept.de>
parents: 2359
diff changeset
  2701
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2702
viewBrowse
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2703
    "let user pick a view and browse its Application class. 
16940
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  2704
     Of course, only Smalltalk views are allowed"
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2705
18193
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2706
    |v app appClass browserClass browser|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2707
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2708
    (v := self pickAView) notNil ifTrue:[
18193
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2709
        browserClass := UserPreferences browserClass.
14238
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2710
        (app := v application) notNil ifTrue:[
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2711
            appClass := app class theMetaclass.
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2712
            (appClass includesSelector:#windowSpec) ifTrue:[
18193
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2713
                browser := browserClass browseClass:appClass selector:#windowSpec
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2714
            ] ifFalse:[
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2715
                browser := browserClass browseClass:appClass
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2716
            ].    
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2717
            browser spawnClassBrowserFor:{v class} in:#newBuffer.
14238
fb35cdfdc677 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14183
diff changeset
  2718
        ] ifFalse:[
18193
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2719
            browser := browserClass browseClass:v class
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2720
        ].    
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2721
    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2722
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2723
    "Created: / 30-06-2011 / 22:59:03 / cg"
18193
240aaffc4453 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18063
diff changeset
  2724
    "Modified: / 12-06-2018 / 10:33:06 / Claus Gittinger"
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2725
!
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2726
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2727
viewDestroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2728
    "let user pick a view and destroy it.
16940
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  2729
     Even allow destroying non-Smalltalk views
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2730
     (also for views which I forgot due to some error)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2731
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2732
    |screen v id i c|
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2733
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2734
    Delay waitForSeconds:1.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2735
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2736
    i := self class cross2Icon.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2737
    i isNil ifTrue:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2738
        c := Cursor crossHair
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2739
    ] ifFalse:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2740
        c := Cursor fromImage:i
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2741
    ].
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2742
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2743
    screen := Screen current.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2744
    id := screen viewIdFromPoint:(screen pointFromUserShowing:c).
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2745
    (v := screen viewFromId:id) notNil ifTrue:[
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2746
        v topView destroy.
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2747
        ^ self
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2748
    ].
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2749
    id = screen rootView id ifTrue:[
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2750
        ^ self
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2751
    ].
16756
673316b94fbb #OTHER by mawalch
mawalch
parents: 16749
diff changeset
  2752
    (Dialog confirm:'This may not be a smalltalk view\(or I somehow forgot about it).\Destroy anyway?' withCRs)
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2753
    ifTrue:[
9805
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2754
        screen destroyView:nil withId:id
ea5c24b69f55 added: #cross2Icon
Stefan Vogel <sv@exept.de>
parents: 9753
diff changeset
  2755
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2756
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2757
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2758
viewHardcopy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2759
    "after a second (to allow redraw of views under menu ...),
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2760
     let user specify a view and save its contents."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2761
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2762
    Processor
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2763
        addTimedBlock:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2764
                        |v|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2765
                        (v := Screen current viewFromUser) notNil ifTrue:[
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2766
                            self hardcopyOfView: v
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2767
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2768
                      ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2769
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
11487
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2770
6e9ed78c5500 added:6 methods
Claus Gittinger <cg@exept.de>
parents: 11468
diff changeset
  2771
    "Modified: / 27-04-2012 / 13:24:23 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2772
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2773
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2774
viewInspect
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2775
    "let user pick a view and inspect it. 
16940
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  2776
     Of course, only Smalltalk views are allowed"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2777
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2778
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2779
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2780
    (v := self pickAView) notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2781
        v inspect
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2782
    ]
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2783
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2784
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2785
viewMigrate
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2786
    "let user pick a view and migrate it to some other display.
16940
fede0c6f64e1 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16894
diff changeset
  2787
     Only Smalltalk views are allowed"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2788
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2789
    |v|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2790
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2791
    (v := self pickAView) notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2792
        self migrateWindow:v topView
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2793
    ]
6032
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2794
!
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2795
14571
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2796
viewSelectAndShrink
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2797
    "let user pick a view and shrink it to a reasonable size
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2798
     Added for stupid mac, to get windows back onto the screen,
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2799
     which have their resize handle hidden or unreachable."
14571
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2800
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2801
    |v|
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2802
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2803
    (v := self pickAView) notNil ifTrue:[
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2804
        v topView 
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2805
            origin:50@50 extent:200@200;
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2806
            raise
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2807
    ]
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2808
!
75b4e99a3384 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14534
diff changeset
  2809
6032
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2810
widgetHardcopy
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2811
    "after a second (to allow redraw of views under menu ...),
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2812
     let user specify a widget and save its contents."
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2813
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2814
    Processor
16446
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2815
        addTimedBlock:
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2816
            [
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2817
                |v|
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2818
                (v := Screen current viewFromUser) notNil ifTrue:[
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2819
                    self saveScreenImage:(Image fromView:v) defaultName:'hardcopy'
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2820
                ]
d8a348125c03 #QUALITY by cg
Claus Gittinger <cg@exept.de>
parents: 16410
diff changeset
  2821
            ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2822
        afterSeconds:(self window sensor shiftDown ifTrue:5 ifFalse:1)
6032
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2823
c9ff68a79be2 Move #widgetHardcopy from NewLauncher to AbstractLauncherApplication
Stefan Vogel <sv@exept.de>
parents: 6019
diff changeset
  2824
    "Created: / 21.8.1998 / 20:44:12 / cg"
2005
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2825
! !
c227faa4616b more refactoring (NewLauncher <-> Launcher)
Claus Gittinger <cg@exept.de>
parents: 2001
diff changeset
  2826
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2827
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  2828
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2829
communicationsSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  2830
    "open a dialog on communications settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  2831
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2832
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2833
    |box check in resources y acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2834
     hasRDoitServer rDoitServerPort
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2835
     rDoitsEnabled rDoitLogging rDoitErrorLogging rDoitErrorDebugging
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2836
     org_rDoitsEnabled org_rDoitLogging org_rDoitErrorLogging org_rDoitErrorDebugging org_rDoitServerPort
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2837
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2838
     hasRemoteBrowsingSupport remoteBrowsingEnabled org_remoteBrowsingEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2839
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2840
     hasWindowMigrationServer windowMigrationAuthenticate windowMigrationPassword
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2841
     windowMigrationEnabled
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2842
     org_windowMigrationEnabled org_windowMigrationAuthenticate org_windowMigrationPassword
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2843
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2844
     hasHTTPServer httpServerRunning httpServerFileRoot httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2845
     httpServerPort httpServerLogFile hasSwiki swikiEnabled swikiRoot
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2846
     allowEmbedded hasSoap soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2847
     org_httpServerRunning org_httpServerFileRoot org_httpServerHomeURL
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2848
     org_httpServerPort org_swikiRoot org_swikiEnabled org_httpServerLogFile
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2849
     org_allowEmbedded org_soapEnabled
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2850
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2851
     osiACSEPresent osiROSEPresent osiCMISEPresent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2852
     osiACSEErrorLogging osiACSEConnectionLogging osiACSEDataLogging
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2853
     osiROSEErrorLogging osiROSEResponseLogging osiROSEInvokationLogging
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2854
     osiCMISEErrorLogging osiCMISEMessageLogging defaultServer
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2855
    |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2856
5048
99fed3febf6f instable state
penk
parents: 5033
diff changeset
  2857
    self warn:'Please use HTTPServer Settings in the new SettingsDialog'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2858
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2859
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2860
    resources := self owningClass classResources.
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2861
    defaultServer := HTTPServer defaultServer.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2862
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2863
    "/ extract relevant remoteBrowsing settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2864
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2865
    remoteBrowsingEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2866
    (hasRemoteBrowsingSupport := SmalltalkShareServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2867
        SmalltalkShareServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2868
            remoteBrowsingEnabled := SmalltalkShareServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2869
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2870
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2871
    org_remoteBrowsingEnabled := remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2872
    remoteBrowsingEnabled := remoteBrowsingEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2873
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2874
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2875
    "/ extract relevant windowMigration settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2876
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2877
    windowMigrationEnabled := windowMigrationAuthenticate := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2878
    (hasWindowMigrationServer := WindowMigrationServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2879
        WindowMigrationServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2880
            windowMigrationEnabled := WindowMigrationServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2881
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2882
        windowMigrationPassword := WindowMigrationServer password.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2883
        windowMigrationAuthenticate := windowMigrationPassword notNil.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2884
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2885
    org_windowMigrationEnabled := windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2886
    windowMigrationEnabled := windowMigrationEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2887
    org_windowMigrationAuthenticate := windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2888
    windowMigrationAuthenticate := windowMigrationAuthenticate asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2889
    org_windowMigrationPassword := windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2890
    windowMigrationPassword := windowMigrationPassword asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2891
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2892
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2893
    "/ extract relevant rdoit settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2894
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2895
    rDoitsEnabled := rDoitLogging := rDoitErrorLogging := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2896
    (hasRDoitServer := RDoItServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2897
        RDoItServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2898
            rDoitsEnabled := RDoItServer serverRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2899
            rDoitLogging := RDoItServer isLogging.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2900
            rDoitErrorLogging := RDoItServer isErrorLogging.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2901
            rDoitErrorDebugging := RDoItServer isErrorCatching not.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2902
            rDoitServerPort := RDoItServer defaultPortNumberOrPath.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2903
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2904
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2905
    org_rDoitsEnabled := rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2906
    org_rDoitLogging := rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2907
    org_rDoitErrorLogging := rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2908
    org_rDoitErrorDebugging := rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2909
    org_rDoitServerPort := rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2910
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2911
    rDoitServerPort := rDoitServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2912
    rDoitsEnabled := rDoitsEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2913
    rDoitLogging := rDoitLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2914
    rDoitErrorLogging := rDoitErrorLogging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2915
    rDoitErrorDebugging := rDoitErrorDebugging asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2916
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2917
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2918
    "/ extract http-server settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2919
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2920
    hasHTTPServer := httpServerRunning := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2921
    (hasHTTPServer := HTTPServer notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2922
        HTTPServer isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2923
            httpServerRunning := HTTPServer isRunning.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2924
            "/ httpServerFileRoot := HTTPServer fileRoot.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2925
            httpServerHomeURL := HTTPServer homeURL.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2926
            httpServerPort := HTTPServer port.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2927
            httpServerLogFile := HTTPServer logFile.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2928
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2929
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2930
    org_httpServerRunning := httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2931
    httpServerRunning := httpServerRunning asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2932
    org_httpServerFileRoot := httpServerFileRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2933
    httpServerFileRoot := httpServerFileRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2934
    org_httpServerHomeURL := httpServerHomeURL.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2935
    httpServerHomeURL := httpServerHomeURL asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2936
    org_httpServerPort := httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2937
    httpServerPort := httpServerPort asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2938
    org_httpServerLogFile := httpServerLogFile.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2939
    httpServerLogFile := httpServerLogFile asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2940
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  2941
    httpServerRunning
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2942
        onChangeEvaluate:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2943
            "/ httpServerFileRoot value:(HTTPServer fileRoot).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2944
            httpServerHomeURL value:(HTTPServer homeURL).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2945
            httpServerPort value:(HTTPServer port).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2946
            httpServerLogFile value:(HTTPServer logFile)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2947
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2948
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2949
    hasSwiki := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2950
    swikiEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2951
    soapEnabled := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2952
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2953
    (hasSwiki := PWS::SwikiAction notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2954
        PWS::SwikiAction isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2955
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2956
                swikiEnabled := (defaultServer notNil and:[defaultServer hasServiceForServiceClass:SwikiAction]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2957
                swikiRoot := PWS::SwikiAction serverDirectory.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2958
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2959
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2960
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2961
    (hasSoap := SOAP::SoapHttpModule notNil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2962
        SOAP::SoapHttpModule isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2963
            (HTTPServer notNil and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2964
                soapEnabled := HTTPServer soapEnabled.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2965
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2966
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2967
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2968
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2969
    org_swikiRoot := swikiRoot.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2970
    org_swikiEnabled := swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2971
    org_soapEnabled := soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2972
    swikiRoot := swikiRoot asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2973
    swikiEnabled := swikiEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2974
    soapEnabled := soapEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2975
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2976
    swikiEnabled
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2977
        onChangeEvaluate:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2978
            swikiRoot value:(PWS::SwikiAction serverDirectory).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2979
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2980
4872
b8ab742630af *** empty log message ***
penk
parents: 4863
diff changeset
  2981
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  2982
    allowEmbedded := defaultServer notNil and:[defaultServer hasServiceForServiceClass:HTTPEmbeddedApplicationService].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2983
    org_allowEmbedded := allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2984
    allowEmbedded := allowEmbedded asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2985
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2986
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2987
    "/ osi settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2988
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2989
    osiACSEPresent := OSI::ACSE notNil and:[OSI::ACSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2990
    osiROSEPresent := OSI::ROSE notNil and:[OSI::ROSE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2991
    osiCMISEPresent := OSI::CMISE notNil and:[OSI::CMISE isLoaded].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2992
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2993
    osiACSEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2994
        osiACSEErrorLogging := OSI::ACSE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2995
        osiACSEConnectionLogging := OSI::ACSE connectionLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2996
        osiACSEDataLogging :=  OSI::ACSE dataLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2997
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  2998
    osiROSEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  2999
        osiROSEErrorLogging := OSI::ROSE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3000
        osiROSEInvokationLogging := OSI::ROSE invocationLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3001
        osiROSEResponseLogging :=  OSI::ROSE responseLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3002
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3003
    osiCMISEPresent ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3004
        osiCMISEErrorLogging := OSI::CMISE errorLogging asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3005
        osiCMISEMessageLogging := OSI::CMISE messageLogging asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3006
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3007
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3008
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3009
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3010
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3011
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3012
    box label:(resources string:'Communication settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3013
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3014
    box addTextLabel:(resources string:'Remote browsing').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3015
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3016
    check := box addCheckBox:(resources string:'Remote browsing enabled') on:remoteBrowsingEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3017
    hasRemoteBrowsingSupport ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3018
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3019
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3020
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3021
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3022
    box addTextLabel:(resources string:'Window migration').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3023
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3024
    check := box addCheckBox:(resources string:'Window migration enabled') on:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3025
    hasWindowMigrationServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3026
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3027
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3028
    check := box addCheckBox:(resources string:'Password check') on:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3029
    check enableChannel:windowMigrationEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3030
    hasWindowMigrationServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3031
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3032
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3033
    box leftIndent:20.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3034
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3035
            addLabelledInputField:(resources string:'Password:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3036
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3037
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3038
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3039
            separateAtX:0.3.
8074
c6e0ef5fa300 use bePassword
Claus Gittinger <cg@exept.de>
parents: 7980
diff changeset
  3040
    in bePassword.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3041
    in model:windowMigrationPassword.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3042
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3043
    in enableChannel:windowMigrationAuthenticate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3044
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3045
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3046
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3047
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3048
    box addTextLabel:'RDoIt Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3049
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3050
    check := box addCheckBox:(resources string:'Remote doits enabled') on:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3051
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3052
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3053
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3054
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3055
    rDoitsEnabled onChangeEvaluate:[ rDoitsEnabled value ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3056
                                        rDoitServerPort value isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3057
                                            rDoitServerPort value:(RDoItServer defaultPortNumberOrPath printString).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3058
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3059
                                     ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3060
                                   ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3061
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3062
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3063
            addLabelledInputField:(resources string:'Port:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3064
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3065
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3066
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3067
            separateAtX:0.3.
5033
2b52a33c7eee allow for rdoitPort to be a string (for ud sockets)
Claus Gittinger <cg@exept.de>
parents: 5032
diff changeset
  3068
    "/ in converter:(PrintConverter new initForNumber).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3069
    in model:rDoitServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3070
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3071
    in enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3072
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3073
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3074
    check := box addCheckBox:(resources string:'Log errors') on:rDoitErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3075
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3076
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3077
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3078
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3079
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3080
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3081
    check := box addCheckBox:(resources string:'Log requests') on:rDoitLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3082
    check left:0.4; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3083
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3084
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3085
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3086
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3087
    check := box addCheckBox:(resources string:'Debug errors') on:rDoitErrorDebugging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3088
    check width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3089
    check enableChannel:rDoitsEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3090
    hasRDoitServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3091
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3092
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3093
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3094
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3095
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3096
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3097
    box addTextLabel:'HTTP Server'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3098
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3099
    check := box addCheckBox:(resources string:'Serving HTTP Requests') on:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3100
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3101
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3102
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3103
    box leftIndent:20.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3104
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3105
            addLabelledInputField:(resources string:'Port:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3106
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3107
            on:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3108
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3109
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3110
    in converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3111
    in model:httpServerPort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3112
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3113
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3114
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3115
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3116
            addLabelledInputField:(resources string:'Log File:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3117
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3118
            on:httpServerLogFile
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3119
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3120
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3121
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3122
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3123
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3124
"/    in := box
5169
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  3125
"/            addLabelledInputField:(resources string:'File Root:')
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  3126
"/            adjust:#right
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3127
"/            on:httpServerFileRoot
5169
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  3128
"/            tabable:true
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  3129
"/            separateAtX:0.3.
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  3130
"/    in acceptChannel:acceptChannel.
69b73214504d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 5153
diff changeset
  3131
"/    in enableChannel:httpServerRunning.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3132
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3133
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3134
            addLabelledInputField:(resources string:'Home URL:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3135
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3136
            on:httpServerHomeURL
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3137
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3138
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3139
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3140
    in enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3141
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3142
    check := box addCheckBox:(resources string:'Swiki enabled') on:swikiEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3143
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3144
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3145
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3146
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3147
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3148
"/    box leftIndent:40.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3149
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3150
    in := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3151
            addLabelledInputField:(resources string:'SwikiRoot:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3152
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3153
            on:swikiRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3154
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3155
            separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3156
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3157
    in enableChannel:(BlockValue forLogical:httpServerRunning and:swikiEnabled).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3158
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3159
    check := box addCheckBox:(resources string:'Allow embedded ST applications') on:allowEmbedded.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3160
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3161
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3162
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3163
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3164
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3165
    check := box addCheckBox:(resources string:'Soap enabled') on:soapEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3166
    hasHTTPServer ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3167
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3168
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3169
    check enableChannel:httpServerRunning.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3170
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3171
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3172
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3173
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3174
    box addTextLabel:(resources string:'OSI Protocols (addOn package)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3175
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3176
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3177
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ACSE') on:osiACSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3178
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3179
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3180
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3181
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3182
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3183
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3184
    check := box addCheckBox:(resources string:'Connections') on:osiACSEConnectionLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3185
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3186
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3187
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3188
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3189
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3190
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3191
    check := box addCheckBox:(resources string:'Data Xfer') on:osiACSEDataLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3192
    osiACSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3193
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3194
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3195
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3196
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3197
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3198
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3199
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3200
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3201
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'ROSE') on:osiROSEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3202
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3203
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3204
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3205
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3206
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3207
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3208
    check := box addCheckBox:(resources string:'Invoactions') on:osiROSEInvokationLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3209
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3210
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3211
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3212
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3213
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3214
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3215
    check := box addCheckBox:(resources string:'Responses') on:osiROSEResponseLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3216
    osiROSEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3217
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3218
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3219
    check left:0.66; width:0.34.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3220
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3221
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3222
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3223
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3224
    check := box addCheckBox:(resources string:'Log %1 Errors' with:'CMISE') on:osiCMISEErrorLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3225
    osiCMISEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3226
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3227
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3228
    check width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3229
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3230
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3231
    check := box addCheckBox:(resources string:'Messages') on:osiCMISEMessageLogging.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3232
    osiCMISEPresent ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3233
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3234
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3235
    check left:0.33; width:0.33.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3236
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3237
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3238
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3239
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3240
        addHelpButtonFor:'Launcher/communicationsSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3241
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3242
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3243
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3244
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3245
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3246
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3247
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3248
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3249
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3250
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3251
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3252
        acceptChannel value:false; value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3253
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3254
        hasRemoteBrowsingSupport ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3255
            remoteBrowsingEnabled := remoteBrowsingEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3256
            (remoteBrowsingEnabled ~~ org_remoteBrowsingEnabled) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3257
                remoteBrowsingEnabled ~~ SmalltalkShareServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3258
                    remoteBrowsingEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3259
                        SmalltalkShareServer killAll
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3260
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3261
                        SmalltalkShareServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3262
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3263
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3264
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3265
                        SmalltalkShareServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3266
                            self warn:'SmalltalkShareServer startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3267
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3268
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3269
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3270
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3271
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3272
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3273
        hasWindowMigrationServer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3274
            windowMigrationEnabled := windowMigrationEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3275
            windowMigrationAuthenticate := windowMigrationAuthenticate value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3276
            windowMigrationPassword := windowMigrationPassword value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3277
            (windowMigrationEnabled ~~ org_windowMigrationEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3278
            or:[windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3279
            or:[windowMigrationPassword ~~ org_windowMigrationPassword]])  ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3280
                windowMigrationAuthenticate ~~ org_windowMigrationAuthenticate ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3281
                    windowMigrationAuthenticate ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3282
                        WindowMigrationServer password:nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3283
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3284
                        WindowMigrationServer password:windowMigrationPassword
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3285
                    ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3286
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3287
                windowMigrationEnabled ~~ WindowMigrationServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3288
                    windowMigrationEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3289
                        WindowMigrationServer stop
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3290
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3291
                        WindowMigrationServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3292
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3293
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3294
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3295
                        WindowMigrationServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3296
                            self warn:'WindowMigrationServer startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3297
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3298
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3299
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3300
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3301
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3302
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3303
        hasRDoitServer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3304
            (rDoitLogging value ~~ org_rDoitLogging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3305
            or:[rDoitErrorDebugging value ~~ org_rDoitErrorDebugging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3306
            or:[rDoitErrorLogging value ~~ org_rDoitErrorLogging
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3307
            or:[rDoitsEnabled value ~~ org_rDoitsEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3308
            or:[rDoitServerPort value ~~ org_rDoitServerPort]]]]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3309
                (Integer readFrom:rDoitServerPort value onError:nil) isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3310
                    RDoItServer defaultPortNumberOrPath:rDoitServerPort value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3311
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3312
                    RDoItServer defaultPortNumberOrPath:(Integer readFrom:rDoitServerPort value onError:nil).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3313
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3314
                RDoItServer logging:(rDoitLogging value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3315
                RDoItServer errorLogging:(rDoitErrorLogging value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3316
                RDoItServer errorCatching:(rDoitErrorDebugging value not).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3317
                rDoitsEnabled := rDoitsEnabled value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3318
                rDoitsEnabled ~~ RDoItServer serverRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3319
                    rDoitsEnabled ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3320
                        RDoItServer stop
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3321
                    ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3322
                        RDoItServer start.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3323
                        "/ must wait a bit; give it a chance to
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3324
                        "/ really start (before checking)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3325
                        Delay waitForSeconds:0.5.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3326
                        RDoItServer serverRunning ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3327
                            self warn:'RDoit startup failed (see stderr).'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3328
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3329
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3330
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3331
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3332
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3333
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3334
        (hasHTTPServer and:[HTTPServer isLoaded]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3335
            httpServerPort := httpServerPort value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3336
            org_httpServerPort ~= httpServerPort ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3337
"/                HTTPServer port:httpServerPort.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3338
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3339
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3340
            httpServerFileRoot := httpServerFileRoot value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3341
            httpServerFileRoot size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3342
                httpServerFileRoot := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3343
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3344
            org_httpServerFileRoot ~= httpServerFileRoot ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3345
"/                HTTPServer fileRoot:httpServerFileRoot.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3346
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3347
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3348
            httpServerLogFile := httpServerLogFile value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3349
            httpServerLogFile size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3350
                httpServerLogFile := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3351
            ].
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3352
"/            org_httpServerLogFile ~= httpServerLogFile ifTrue:[
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3353
"/                HTTPServer logFile:httpServerLogFile.
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3354
"/            ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3355
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3356
            httpServerHomeURL := httpServerHomeURL value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3357
            httpServerHomeURL size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3358
                httpServerHomeURL := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3359
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3360
            org_httpServerHomeURL ~= httpServerHomeURL ifTrue:[
5024
a52b4b0941b5 unstable state
penk
parents: 5016
diff changeset
  3361
"/                HTTPServer defaultHomeURL:httpServerHomeURL.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3362
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3363
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3364
            httpServerRunning value ~~ org_httpServerRunning ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3365
                httpServerRunning value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3366
                    HTTPServer startServer
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3367
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3368
                    HTTPServer stopServer
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3369
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3370
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3371
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3372
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3373
        hasSwiki ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3374
            swikiRoot := swikiRoot value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3375
            swikiRoot size == 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3376
                swikiRoot := nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3377
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3378
            org_swikiRoot ~= swikiRoot ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3379
                PWS::ServerAction serverDirectory:swikiRoot.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3380
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3381
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3382
            swikiEnabled value ~~ org_swikiEnabled ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3383
                swikiEnabled value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3384
                    HTTPServer setupMySwiki
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3385
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3386
                    HTTPServer disableMySwiki
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3387
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3388
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3389
            allowEmbedded value ~~ org_allowEmbedded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3390
                defaultServer notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3391
                    HTTPEmbeddedApplicationService registerServiceOn:defaultServer.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3392
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3393
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3394
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3395
        hasSoap ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3396
            soapEnabled value ~~ org_soapEnabled ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3397
                defaultServer notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3398
                    soapEnabled value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3399
                        defaultServer setupSoap
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3400
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3401
                        defaultServer disableSoap
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3402
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3403
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3404
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3405
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3406
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3407
        osiACSEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3408
            OSI::ACSE errorLogging:osiACSEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3409
            OSI::ACSE connectionLogging:osiACSEConnectionLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3410
            OSI::ACSE dataLogging:osiACSEDataLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3411
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3412
        osiROSEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3413
            OSI::ROSE errorLogging:osiROSEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3414
            OSI::ROSE invocationLogging:osiROSEInvokationLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3415
            OSI::ROSE responseLogging:osiROSEResponseLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3416
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3417
        osiCMISEPresent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3418
            OSI::CMISE errorLogging:osiCMISEErrorLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3419
            OSI::CMISE messageLogging:osiCMISEMessageLogging value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3420
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3421
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3422
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3423
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3424
    "Modified: / 28.6.1999 / 15:44:35 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3425
    "Modified: / 20.1.2000 / 19:14:18 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3426
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3427
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3428
compilerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3429
    "open a dialog on compiler related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3430
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3431
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3432
    |box warnings warnSTX warnUnderscore warnDollar warnParagraph warnOldStyle warnUnusedVars
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3433
     allowDollar allowParagraph allowUnderscore allowSqueakExtensions allowQualifiedNames
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3434
     allowDolphinExtensions allowOldStyleAssignment allowReservedWordsAsSelectors
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3435
     immutableArrays
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3436
     warnSTXBox warnUnderscoreBox warnOldStyleBox warnCommonMistakes warnCommonMistakesBox
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3437
     warnCompatibility warnCompatibilityBox warnDollarBox warnParagraphBox warnUnusedVarsBox
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3438
     stcCompilation compilationList stcCompilationOptions
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3439
     historyLines fullHistoryUpdate
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3440
     catchMethodRedefs catchClassRedefs keepSourceOptions keepSource
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3441
     constantFoldingOptions constantFolding justInTimeCompilation
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3442
     warnEnabler check component oldIndent supportsJustInTimeCompilation y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3443
     y2 fullDebugSupport yMax
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3444
     compileLazy loadBinaries canLoadBinaries strings idx
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3445
     resources stcSetupButt|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3446
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3447
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3448
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3449
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3450
    loadBinaries := Smalltalk loadBinaries asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3451
    compileLazy := Autoload compileLazy asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3452
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3453
    warnings := ParserFlags warnings asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3454
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3455
    warnSTX := ParserFlags warnSTXSpecials asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3456
    warnUnderscore := ParserFlags warnUnderscoreInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3457
    warnDollar := ParserFlags warnDollarInIdentifier asValue.
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3458
    warnParagraph := ParserFlags warnParagraphInIdentifier asValue.
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3459
    warnOldStyle := ParserFlags warnOldStyleAssignment asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3460
    warnCommonMistakes := ParserFlags warnCommonMistakes asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3461
    warnCompatibility := ParserFlags warnPossibleIncompatibilities asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3462
    warnUnusedVars := ParserFlags warnUnusedVars asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3463
    allowUnderscore := ParserFlags allowUnderscoreInIdentifier asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3464
    allowDollar := ParserFlags allowDollarInIdentifier asValue.
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3465
    allowParagraph := ParserFlags allowParagraphInIdentifier asValue.
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3466
    allowSqueakExtensions := ParserFlags allowSqueakExtensions asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3467
    allowDolphinExtensions := ParserFlags allowDolphinExtensions asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3468
    allowQualifiedNames := ParserFlags allowQualifiedNames asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3469
    allowOldStyleAssignment := ParserFlags allowOldStyleAssignment asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3470
    allowReservedWordsAsSelectors := ParserFlags allowReservedWordsAsSelectors asValue.
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3471
    immutableArrays := ParserFlags arraysAreImmutable asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3472
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3473
    constantFoldingOptions := #( nil #level1 #level2 #full ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3474
    constantFolding := SelectionInList new list:(resources array:#('disabled' 'level1 (always safe)' 'level2 (usually safe)' 'full')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3475
    constantFolding selectionIndex:3.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3476
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3477
    stcCompilationOptions := #(default never).
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  3478
    strings := #('primitive code only' 'never').
6538
36dba556ab3a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6436
diff changeset
  3479
    idx := (stcCompilationOptions indexOf:(ParserFlags stcCompilation) ifAbsent:1).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3480
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3481
    stcCompilation := SelectionInList new list:(resources array:strings).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3482
    stcCompilation selectionIndex:idx.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3483
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3484
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation)
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3485
    ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3486
        justInTimeCompilation := ObjectMemory justInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3487
        fullDebugSupport := ObjectMemory fullSingleStepSupport.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3488
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3489
        justInTimeCompilation := false.
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3490
        fullDebugSupport := (ParserFlags fullLineNumberInfo) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3491
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3492
    justInTimeCompilation := justInTimeCompilation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3493
    fullDebugSupport := fullDebugSupport asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3494
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3495
    catchMethodRedefs := Class catchMethodRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3496
    catchClassRedefs := Class catchClassRedefinitions asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3497
    historyLines := HistoryManager notNil and:[HistoryManager isLoaded and:[HistoryManager isActive]].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3498
    historyLines ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3499
        fullHistoryUpdate := false asValue
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3500
    ] ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3501
        fullHistoryUpdate := HistoryManager fullHistoryUpdate asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3502
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3503
    historyLines := historyLines asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3504
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3505
    keepSourceOptions := #( keep reference absReference sourceReference discard ).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3506
    keepSource := SelectionInList new
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3507
                        list:(resources array:#('Keep as String' 'Reference to Filename' 'Reference to Full Path' 'Append and Ref in `st.src''' 'Discard' )).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3508
    keepSource selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3509
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3510
    warnEnabler := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3511
              warnings value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3512
                warnSTXBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3513
                warnOldStyleBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3514
                warnCommonMistakesBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3515
                warnCompatibilityBox enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3516
                warnUnusedVarsBox enable.
11990
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  3517
                warnUnderscoreBox enabled:allowUnderscore.
Claus Gittinger <cg@exept.de>
parents: 11870
diff changeset
  3518
                warnDollarBox enabled:allowDollar.
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3519
                warnParagraphBox enabled:allowParagraph.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3520
              ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3521
                warnSTXBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3522
                warnUnderscoreBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3523
                warnDollarBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3524
                warnOldStyleBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3525
                warnCommonMistakesBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3526
                warnCompatibilityBox disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3527
                warnUnusedVarsBox disable.
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3528
                warnParagraphBox disable.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3529
              ]].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3530
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3531
    warnings onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3532
    allowUnderscore onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3533
    allowDollar onChangeEvaluate:warnEnabler.
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3534
    allowParagraph onChangeEvaluate:warnEnabler.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3535
"/    allowSqueakExtensions onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3536
"/    allowQualifiedNames onChangeEvaluate:warnEnabler.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3537
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3538
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3539
    box label:(resources string:'Compiler Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3540
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3541
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3542
    check := box addCheckBox:(resources string:'Catch Method Redefinitions') on:catchMethodRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3543
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3544
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3545
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3546
    check := box addCheckBox:(resources string:'Catch Class Redefinitions') on:catchClassRedefs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3547
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3548
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3549
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3550
    check := box addCheckBox:(resources string:'Keep History Line in Methods') on:historyLines.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3551
    check width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3552
    HistoryManager isNil ifTrue:[check disable].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3553
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3554
    check := box addCheckBox:(resources string:'Keep Full Class History') on:fullHistoryUpdate.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3555
    check left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3556
    HistoryManager isNil ifTrue:[check disable] ifFalse:[check enableChannel:historyLines].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3557
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3558
    box addPopUpList:(resources string:'FileIn Source Mode:') on:keepSource.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3559
    keepSource selectionIndex:( keepSourceOptions indexOf:(ClassCategoryReader sourceMode) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3560
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3561
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3562
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3563
    box addCheckBox:(resources string:'Lazy Compilation when Autoloading') on:compileLazy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3564
    check := box addCheckBox:(resources string:'If Present, Load Binary Objects when Autoloading') on:loadBinaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3565
    canLoadBinaries ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3566
        loadBinaries value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3567
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3568
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3569
    supportsJustInTimeCompilation ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3570
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3571
                        addCheckBox:(resources string:'Just in Time Compilation to Machine Code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3572
                        on:justInTimeCompilation.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3573
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3574
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3575
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3576
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3577
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3578
        compilationList := box addPopUpList:(resources string:'Stc Compilation to Machine Code') on:stcCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3579
        stcCompilation selectionIndex:( stcCompilationOptions indexOf:(Compiler stcCompilation) ifAbsent:1).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3580
        stcSetupButt := box addComponent:(Button label:(resources string:'Stc Compilation Parameters...')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3581
                   action:[|manager|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3582
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3583
                           self stcCompilerSettings.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3584
                          ]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3585
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3586
        box addHorizontalLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3587
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3588
        "/ if there is no compiler around,
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3589
        "/ change to compile nothing, and disable the checkBoxes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3590
        Compiler canCreateMachineCode ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3591
            stcCompilation selectionIndex:(3 min:stcCompilationOptions size).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3592
            compilationList disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3593
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3594
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3595
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3596
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3597
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3598
    component := box addCheckBox:(resources string:'Allow Underscore in Identifiers') on:allowUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3599
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3600
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3601
    component := box addCheckBox:(resources string:'Allow Dollar in Identifiers') on:allowDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3602
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3603
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3604
    component := box addCheckBox:(resources string:'Allow Paragraph in Identifiers') on:allowParagraph.
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3605
    component width:0.4.
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3606
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3607
    component := box addCheckBox:(resources string:'Allow VW3 QualifiedNames') on:allowQualifiedNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3608
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3609
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3610
    component := box addCheckBox:(resources string:'Allow Squeak Extensions') on:allowSqueakExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3611
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3612
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3613
    component := box addCheckBox:(resources string:'Allow Dolphin Extensions') on:allowDolphinExtensions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3614
    component width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3615
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3616
    y2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3617
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3618
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3619
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3620
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3621
    component :=box addPopUpList:(resources string:'Constant Folding:') on:constantFolding.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3622
    component superView left:0.5; width:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3623
    constantFolding selectionIndex:( constantFoldingOptions indexOf:(Compiler foldConstants) ifAbsent:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3624
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3625
    component := box addCheckBox:(resources string:'Allow OldStyle Assignment (_)') on:allowOldStyleAssignment.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3626
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3627
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3628
    component := box addCheckBox:(resources string:'Allow Reserved Words as Selector (self)') on:allowReservedWordsAsSelectors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3629
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3630
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3631
    component := box addCheckBox:(resources string:'Full Debug Info') on:fullDebugSupport.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3632
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3633
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3634
    component := box addCheckBox:(resources string:'Literal Arrays are Immutable') on:immutableArrays.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3635
    component left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3636
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3637
    box yPosition:(box yPosition max:y2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3638
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3639
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3640
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3641
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3642
    box addCheckBox:(resources string:'Warnings') on:warnings.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3643
"/    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3644
    oldIndent := box leftIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3645
    box leftIndent:30.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3646
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3647
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3648
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3649
    warnSTXBox := box addCheckBox:(resources string:'ST/X Extensions') on:warnSTX.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3650
    warnSTXBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3651
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3652
    warnUnderscoreBox := box addCheckBox:(resources string:'Underscores in Identifiers') on:warnUnderscore.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3653
    warnUnderscoreBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3654
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3655
    warnDollarBox := box addCheckBox:(resources string:'Dollars in Identifiers') on:warnDollar.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3656
    warnDollarBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3657
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3658
    warnParagraphBox := box addCheckBox:(resources string:'Paragraphs in Identifiers') on:warnParagraph.
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3659
    warnParagraphBox width:0.4.
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3660
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3661
    warnUnusedVarsBox := box addCheckBox:(resources string:'Unused Method Variables') on:warnUnusedVars.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3662
    warnUnusedVarsBox width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3663
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3664
    yMax := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3665
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3666
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3667
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3668
    warnOldStyleBox := box addCheckBox:(resources string:'OldStyle Assignment') on:warnOldStyle.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3669
    warnOldStyleBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3670
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3671
    warnCommonMistakesBox := box addCheckBox:(resources string:'Common Mistakes') on:warnCommonMistakes.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3672
    warnCommonMistakesBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3673
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3674
    warnCompatibilityBox := box addCheckBox:(resources string:'Possible Incompatibilities') on:warnCompatibility.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3675
    warnCompatibilityBox left:0.5; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3676
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3677
    box leftIndent:oldIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3678
    box yPosition:(yMax max: box yPosition).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3679
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3680
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3681
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3682
        addHelpButtonFor:'Launcher/compilerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3683
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3684
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3685
    warnEnabler value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3686
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3687
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3688
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3689
        HistoryManager notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3690
            HistoryManager fullHistoryUpdate:fullHistoryUpdate value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3691
            historyLines value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3692
                HistoryManager activate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3693
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3694
                HistoryManager deactivate
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3695
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3696
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3697
        Class catchMethodRedefinitions:catchMethodRedefs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3698
        Class catchClassRedefinitions:catchClassRedefs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3699
        ClassCategoryReader sourceMode:(keepSourceOptions at:keepSource selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3700
        Compiler warnings:warnings value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3701
        Compiler warnSTXSpecials:warnSTX value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3702
        Compiler warnOldStyleAssignment:warnOldStyle value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3703
        Compiler warnUnderscoreInIdentifier:warnUnderscore value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3704
        Compiler warnDollarInIdentifier:warnDollar value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3705
        Compiler warnCommonMistakes:warnCommonMistakes value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3706
        Compiler warnPossibleIncompatibilities:warnCompatibility value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3707
        Compiler warnUnusedVars:warnUnusedVars value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3708
        Compiler allowUnderscoreInIdentifier:allowUnderscore value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3709
        Compiler allowDollarInIdentifier:allowDollar value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3710
        Compiler allowSqueakExtensions:allowSqueakExtensions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3711
        Compiler allowDolphinExtensions:allowDolphinExtensions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3712
        Compiler allowQualifiedNames:allowQualifiedNames value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3713
        Compiler allowOldStyleAssignment:allowOldStyleAssignment value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3714
        Compiler allowReservedWordsAsSelectors:allowReservedWordsAsSelectors value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3715
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3716
        Compiler arraysAreImmutable:immutableArrays value.
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3717
        ParserFlags lineNumberInfo:(fullDebugSupport value ifTrue:[#full] ifFalse:[true]).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3718
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3719
        ParserFlags stcCompilation:(stcCompilationOptions at:stcCompilation selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3720
        Compiler foldConstants:(constantFoldingOptions at:constantFolding selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3721
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3722
        supportsJustInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3723
            justInTimeCompilation := justInTimeCompilation value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3724
            justInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3725
                Smalltalk allMethodsDo:[:m | m checked:false].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3726
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3727
            ObjectMemory justInTimeCompilation:justInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3728
            ObjectMemory fullSingleStepSupport:fullDebugSupport value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3729
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3730
        Autoload compileLazy:compileLazy value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3731
        Smalltalk loadBinaries:loadBinaries value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3732
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3733
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3734
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3735
"
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3736
    self compilerSettings
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  3737
"
11813
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3738
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3739
    "Modified: / 10-09-1995 / 19:19:18 / claus"
4b506523f3bc lineNumberInfo moved from parser to parserflags
Claus Gittinger <cg@exept.de>
parents: 11684
diff changeset
  3740
    "Modified: / 09-09-1996 / 22:42:47 / stefan"
17074
fc9b19b9ef6f #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 16990
diff changeset
  3741
    "Modified: / 16-11-2016 / 22:37:24 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3742
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3743
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3744
displaySettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3745
    "open a dialog on display related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  3746
     Obsoleted by the settings application."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3747
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3748
    |box listOfSizes sizeInfos
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3749
     sizes sizeNames sizeList sizeX sizeY deepIcons
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3750
     isColorMonitor useFixPalette useFixGrayPalette idx ditherStyles ditherSyms ditherList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3751
     y component screen visual clipEncodings clipEncodingSyms clipEncodingList resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3752
     |
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3753
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3754
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3755
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3756
    listOfSizes := resources at:'LIST_OF_OFFERED_SCREEN_SIZES' default:#default.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3757
    listOfSizes == #default ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3758
        "/ nothing in resource file; offer at least some.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3759
        sizeInfos := #(
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3760
                           ( '11.3'' (235mm x 175mm) LCD'   (235 175)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3761
                           ( '17''   (325mm x 245mm)'       (325 245)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3762
                           ( '19''   (340mm x 270mm)'       (340 270)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3763
                           ( '20''   (350mm x 280mm)'       (350 280)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3764
                           ( '21''   (365mm x 285mm)'       (365 285)    )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3765
                       ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3766
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3767
        sizeInfos := resources array:listOfSizes.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3768
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3769
    sizeNames := sizeInfos collect:[:entry | entry at:1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3770
    sizes := sizeInfos collect:[:entry | entry at:2].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3771
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3772
    screen := Screen current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3773
    visual := screen visualType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3774
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3775
    isColorMonitor := screen hasColors asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3776
    deepIcons := screen supportsDeepIcons asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3777
    useFixPalette := screen fixColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3778
    useFixGrayPalette := screen fixGrayColors notNil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3779
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3780
    sizeList := SelectionInList with:sizeNames.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3781
    sizeX := screen widthInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3782
    sizeY := screen heightInMillimeter asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3783
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3784
    clipEncodingSyms := #(nil #iso8859 #jis #jis7 #sjis #euc #big5).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3785
    clipEncodings := resources array:#('untranslated' 'iso8859' 'jis' 'jis7' 'shift-JIS' 'EUC' 'big5').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3786
    clipEncodingList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3787
    clipEncodingList list:clipEncodings.
6036
826c4d2271b3 Unify naming: clipBoard->clipboard
Stefan Vogel <sv@exept.de>
parents: 6032
diff changeset
  3788
    clipEncodingList selectionIndex:(clipEncodingSyms indexOf:screen clipboardEncoding ifAbsent:1).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3789
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3790
    ditherList := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3791
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3792
    (visual == #StaticGray or:[visual == #GrayScale]) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3793
        ditherStyles := #('threshold' 'ordered dither' 'error diffusion').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3794
        ditherSyms := #(threshold ordered floydSteinberg).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3795
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3796
        visual ~~ #TrueColor ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3797
            ditherStyles := #('nearest color' 'error diffusion').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3798
            ditherSyms := #(ordered floydSteinberg).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3799
        ]
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3800
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3801
    ditherSyms notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3802
        ditherList list:ditherStyles.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3803
        ditherList selectionIndex:(ditherSyms indexOf:(Image ditherAlgorithm) ifAbsent:#threshold).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3804
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3805
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3806
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3807
    box label:(resources string:'Display Screen Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3808
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  3809
    box addTextLabel:(resources string:'Actual Visible Screen Area:') adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3810
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3811
    (box addPopUpList:(resources string:'Common Sizes:') on:sizeList)
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3812
        label:'monitor size'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3813
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3814
    idx := sizes findFirst:[:entry |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3815
                                ((entry at:1) = sizeX value)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3816
                                and:[((entry at:2) = sizeY value)]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3817
                           ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3818
    idx ~~ 0 ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3819
        sizeList selectionIndex:idx
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3820
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3821
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3822
    sizeList onChangeEvaluate:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3823
                                        |idx|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3824
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3825
                                        idx := sizeList selectionIndex.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3826
                                        sizeX value:((sizes at:idx) at:1).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3827
                                        sizeY value:((sizes at:idx) at:2).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3828
                                    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3829
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3830
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3831
    component := box addTextLabel:(resources string:'Screen Size:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3832
    component width:0.3; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3833
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3834
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3835
    component := box addInputFieldOn:nil tabable:true.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3836
    component width:0.25; left:0.3;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3837
              immediateAccept:false; acceptOnLeave:false;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3838
              cursorMovementWhenUpdating:#beginOfLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3839
              converter:(PrintConverter new initForInteger);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3840
              model:sizeX.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3841
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3842
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3843
    component := box addTextLabel:(' x ').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3844
    component width:0.1; left:0.55; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3845
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3846
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3847
    component := box addInputFieldOn:nil tabable:true.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3848
    component width:0.25; left:0.65;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3849
              immediateAccept:false; acceptOnLeave:false;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3850
              cursorMovementWhenUpdating:#beginOfLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3851
              converter:(PrintConverter new initForInteger);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3852
              model:sizeY.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3853
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3854
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3855
    component := box addTextLabel:('(mm)').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3856
    component width:0.1; left:0.9; adjust:#center; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3857
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3858
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3859
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3860
    (box addTextLabel:(resources string:'Screen: Depth: %1 Visual: %2  (%3)'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3861
                                 with:screen depth printString
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3862
                                 with:screen visualType
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3863
                                 with:screen serverVendor))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3864
        adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3865
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3866
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3867
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3868
    box addCheckBox:(resources string:'Color Monitor') on:isColorMonitor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3869
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3870
    visual == #PseudoColor ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3871
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3872
        component := box addCheckBox:(resources string:'Use Fix Color Palette %1' with:'(4x8x4)') on:useFixPalette.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3873
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3874
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3875
        component := box addCheckBox:(resources string:'Use Fix Gray Color Palette %1' with:'(32)') on:useFixGrayPalette.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3876
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3877
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3878
    ditherSyms notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3879
        box addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3880
        component := box addPopUpList:(resources string:'Image Display:') on:ditherList.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3881
        component defaultLabel:'image display'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3882
        component superView horizontalLayout:#leftSpace.
4244
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
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3886
    box addCheckBox:(resources string:'Allow Colored/Grayscale Icons') on:deepIcons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3887
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3888
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3889
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3890
    component := box addPopUpList:(resources string:'ClipBoard Encoding:') on:clipEncodingList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3891
    component superView horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3892
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3893
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3894
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3895
        addHelpButtonFor:'Launcher/screenSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3896
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3897
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3898
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3899
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3900
        Image flushDeviceImages.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3901
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3902
        screen visualType == #PseudoColor ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3903
            useFixPalette value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3904
                Color colorAllocationFailSignal handle:[:ex |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3905
                    self warn:'Could not allocate colors.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3906
                ] do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3907
                    Color getColorsRed:4 green:8 blue:4 on:screen
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3908
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3909
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3910
                screen releaseFixColors
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3911
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3912
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3913
            useFixGrayPalette value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3914
                Color colorAllocationFailSignal handle:[:ex |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3915
                    self warn:'Could not allocate colors.'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3916
                ] do:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3917
                    Color getGrayColors:32 on:screen
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3918
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3919
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3920
                screen releaseFixGrayColors
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3921
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3922
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3923
        screen hasColors:isColorMonitor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3924
        screen widthInMillimeter:sizeX value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3925
        screen heightInMillimeter:sizeY value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3926
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3927
        screen supportsDeepIcons:deepIcons value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3928
        ditherSyms notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3929
            Image ditherAlgorithm:(ditherSyms at:ditherList selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3930
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3931
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3932
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3933
            View defaultStyle:(View defaultStyle).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3934
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3935
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3936
        screen clipboardEncoding:(clipEncodingSyms at:clipEncodingList selectionIndex).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3937
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3938
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3939
17628
6019f0420dce #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17608
diff changeset
  3940
    "Modified: / 09-09-1996 / 22:43:04 / stefan"
6019f0420dce #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17608
diff changeset
  3941
    "Modified: / 24-08-2017 / 15:19:24 / cg"
4244
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
editSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3945
    "open a dialog on edit settings"
8421
f1d5ef6bf4f4 default to 4-tabs
Claus Gittinger <cg@exept.de>
parents: 8401
diff changeset
  3946
    "OBSOLETE - this functionality is no longer used - see AbstractSettingsApplication"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3947
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3948
    |box st80EditMode st80SelectMode resources
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3949
     tabsIs4 prevTabsIs4 searchDialogIsModal startTextDragWithControl
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3950
     currentPrefs|
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3951
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3952
    currentPrefs := UserPreferences current.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3953
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3954
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3955
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3956
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3957
    "/
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3958
    st80EditMode := currentPrefs st80EditMode asValue.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3959
    st80SelectMode := currentPrefs st80SelectMode asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3960
    prevTabsIs4 := (ListView userDefaultTabPositions = ListView tab4Positions).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3961
    tabsIs4 := prevTabsIs4 asValue.
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3962
    searchDialogIsModal := currentPrefs searchDialogIsModal asValue.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3963
    startTextDragWithControl := currentPrefs startTextDragWithControl asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3964
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3965
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3966
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3967
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3968
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3969
    box label:(resources string:'Edit settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3970
6806
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3971
    box addCheckBox:(resources string:'Cursor has ST80 Line-end Behavior') on:st80EditMode.
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  3972
    box addCheckBox:(resources string:'Double Click Select Behavior as in ST80') on:st80SelectMode.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3973
    box addCheckBox:(resources string:'Tab Stops in Multiples of 4') on:tabsIs4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3974
    box addCheckBox:(resources string:'SearchBox is Modal') on:searchDialogIsModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3975
    box addCheckBox:(resources string:'CTRL-Key to Start TextDrag') on:startTextDragWithControl.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3976
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3977
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3978
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  3979
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3980
        addHelpButtonFor:'Launcher/editSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3981
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3982
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3983
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3984
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3985
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3986
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3987
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3988
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3989
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3990
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  3991
    box accepted ifTrue:[
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3992
        currentPrefs st80EditMode:(st80EditMode value).
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  3993
        currentPrefs st80SelectMode:(st80SelectMode value).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3994
        tabsIs4 value ~~ prevTabsIs4 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3995
            ListView userDefaultTabPositions:(tabsIs4 value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3996
                                                ifTrue:[ListView tab4Positions]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3997
                                                ifFalse:[ListView tab8Positions]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3998
            ListView allSubInstancesDo:[:eachKindOfListView |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  3999
                tabsIs4 value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4000
                    ifTrue:[eachKindOfListView setTab4]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4001
                    ifFalse:[eachKindOfListView setTab8]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4002
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4003
        ].
14682
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  4004
        currentPrefs searchDialogIsModal:searchDialogIsModal value.
debfdc71c71f class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14571
diff changeset
  4005
        currentPrefs startTextDragWithControl:startTextDragWithControl value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4006
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4007
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4008
6806
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  4009
    "Created: / 06-01-1999 / 14:12:09 / cg"
1f45872c372f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6661
diff changeset
  4010
    "Modified: / 03-07-2006 / 16:35:03 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4011
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4012
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4013
fontSettingsFor:requestor
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4014
    "open a dialog on font related settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4015
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4016
    (self fontBoxForEncoding:nil) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4017
        requestor reopenLauncher.
3741
a9d08a1b0d7d Fix save settings dialog when called with Filename arg
Stefan Vogel <sv@exept.de>
parents: 3738
diff changeset
  4018
    ]
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  4019
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  4020
    self fontSettingsFor:nil
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  4021
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4022
    "Created: 26.2.1996 / 22:52:51 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4023
    "Modified: 8.1.1997 / 14:52:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4024
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4025
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4026
javaSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4027
    "open a dialog on settings related to the java subsystem.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4028
     Obsoleted by the settings application."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4029
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4030
    |box audio javaHome classPath oldJavaHome oldClassPath resources component
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4031
     extraFileSecurityChecks extraSocketSecurityChecks
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4032
     supportsJustInTimeCompilation
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4033
     javaJustInTimeCompilation javaNativeCodeOptimization
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4034
     showJavaByteCode exceptionDebug nullPointerExceptionDebug pathSep|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4035
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4036
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4037
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4038
    audio := JavaVM audioEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4039
    extraFileSecurityChecks := JavaVM fileOpenConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4040
    extraSocketSecurityChecks := JavaVM socketConnectConfirmation asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4041
    (supportsJustInTimeCompilation := ObjectMemory supportsJustInTimeCompilation) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4042
        javaJustInTimeCompilation := ObjectMemory javaJustInTimeCompilation asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4043
        javaNativeCodeOptimization := ObjectMemory javaNativeCodeOptimization asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4044
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4045
        javaJustInTimeCompilation := javaNativeCodeOptimization := false
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4046
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4047
    showJavaByteCode := JavaMethod forceByteCodeDisplay asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4048
    exceptionDebug := JavaVM exceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4049
    nullPointerExceptionDebug := JavaVM nullPointerExceptionDebug asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4050
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4051
    classPath := (Java classPath ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4052
    OperatingSystem isUNIXlike ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4053
        pathSep := $;.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4054
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4055
        pathSep := $:.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4056
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4057
    classPath := (classPath asStringWith:pathSep) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4058
    oldClassPath := classPath copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4059
    classPath := classPath asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4060
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4061
    javaHome := (Java javaHome ? '').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4062
    oldJavaHome := javaHome copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4063
    javaHome := javaHome asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4064
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4065
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4066
    box label:(resources string:'Java').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4067
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4068
    box addCheckBox:(resources string:'Audio Enabled') on:audio.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4069
    box addCheckBox:(resources string:'Confirm file open for write') on:extraFileSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4070
    box addCheckBox:(resources string:'Confirm socket connect') on:extraSocketSecurityChecks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4071
    box addCheckBox:(resources string:'Debug Exceptions') on:exceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4072
    box addCheckBox:(resources string:'Debug Null Pointer Exceptions') on:nullPointerExceptionDebug.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4073
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4074
    supportsJustInTimeCompilation ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4075
        box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4076
            addCheckBox:(resources string:'java just in time compilation to machine code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4077
            on:javaJustInTimeCompilation.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4078
        box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4079
            addCheckBox:(resources string:'optimize native code')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4080
            on:javaNativeCodeOptimization.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4081
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4082
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4083
    box addCheckBox:(resources string:'Display java byteCode (i.e. not source)') on:showJavaByteCode.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4084
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4085
    component := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4086
                    addLabelledInputField:(resources string:'classPath:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4087
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4088
                    on:classPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4089
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4090
                    separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4091
    component acceptOnLeave:false.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4092
    component := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4093
                    addLabelledInputField:(resources string:'java home:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4094
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4095
                    on:javaHome
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4096
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4097
                    separateAtX:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4098
    component acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4099
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4100
    box addVerticalSpace.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4101
    box addComponent:(Button
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4102
                        label:(resources string:'Reinit VM now')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4103
                        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4104
                                box windowGroup withWaitCursorDo:[
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4105
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4106
"/                                        Java initialize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4107
"/                                    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4108
"/                                    Java classPath size == 0 ifTrue:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4109
"/                                        self warn:'No JDK found'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4110
"/                                    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4111
                                        JavaVM initializeVM
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4112
"/                                    ]
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4113
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4114
                               ]).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4115
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4116
    box addComponent:(Button
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4117
                        label:(resources string:'Remove all Java classes now')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4118
                        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4119
                                box windowGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4120
                                    Java flushAllJavaResources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4121
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4122
                               ]).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4123
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4124
    "/ box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4125
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4126
"/    box addHelpButtonFor:'Launcher/javaSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4127
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4128
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4129
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4130
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4131
        classPath value ~= oldClassPath ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4132
            OperatingSystem isUNIXlike ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4133
                classPath := (classPath value asCollectionOfSubstringsSeparatedBy:$:)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4134
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4135
                classPath := (classPath value asCollectionOfSubstringsSeparatedBy:$;)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4136
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4137
            Java classPath:classPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4138
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4139
        Java javaHome:javaHome value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4140
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4141
        JavaMethod forceByteCodeDisplay:showJavaByteCode value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4142
        JavaVM audioEnabled:audio value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4143
        JavaVM exceptionDebug:exceptionDebug value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4144
        JavaVM nullPointerExceptionDebug:nullPointerExceptionDebug value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4145
        JavaVM fileOpenConfirmation: extraFileSecurityChecks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4146
        JavaVM socketConnectConfirmation: extraSocketSecurityChecks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4147
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4148
        javaJustInTimeCompilation value ~~ ObjectMemory javaJustInTimeCompilation ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4149
            ObjectMemory javaJustInTimeCompilation:javaJustInTimeCompilation value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4150
            javaJustInTimeCompilation value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4151
                JavaMethod allSubInstancesDo:[:m | m checked:false].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4152
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4153
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4154
        javaNativeCodeOptimization value ~~ ObjectMemory javaNativeCodeOptimization ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4155
            ObjectMemory javaNativeCodeOptimization:javaNativeCodeOptimization value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4156
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4157
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4158
    box destroy
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  4159
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  4160
    self javaSettings
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  4161
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4162
    "Created: / 18.7.1998 / 22:32:58 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4163
    "Modified: / 27.1.1999 / 20:16:03 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4164
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4165
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4166
keyboardSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4167
    "open a dialog on keyboard related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4168
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4169
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4170
    |mappings listOfRawKeys listOfFunctions
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4171
     box l
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4172
     list1 list2 listView1 listView2
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4173
     frame selectionForwarder macroForwarder macroTextView y resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4174
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4175
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4176
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4177
    mappings := Screen current keyboardMap.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4178
13882
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
  4179
    listOfRawKeys := (mappings keys collect:[:key | key asString] as:Array) sort.
212877cb97bf merged in jv's chenges
Claus Gittinger <cg@exept.de>
parents: 13761
diff changeset
  4180
    listOfFunctions := (mappings values asSet collect:[:key | key asString] as:Array) sort.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4181
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4182
    selectionForwarder := Plug new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4183
    selectionForwarder respondTo:#showFunction
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4184
                  with:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4185
                        |raw|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4186
                        raw := list1 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4187
                        list2 retractInterestsFor:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4188
                        list2 selection:(mappings at:raw asSymbol) asString.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4189
                        list2 onChangeSend:#showRawKey to:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4190
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4191
    selectionForwarder respondTo:#showRawKey
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4192
                  with:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4193
                        |f raw|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4194
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4195
                        f := list2 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4196
                        list1 retractInterestsFor:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4197
                        raw := mappings keyAtValue:f asString.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4198
                        raw isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4199
                            raw := mappings keyAtValue:f first.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4200
                            raw isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4201
                                raw := mappings keyAtValue:f asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4202
                            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4203
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4204
                        list1 selection:raw.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4205
                        list1 onChangeSend:#showFunction to:selectionForwarder.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4206
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4207
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4208
    macroForwarder := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4209
                        |f macro indent|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4210
                        f := list2 selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4211
                        (f startsWith:'Cmd') ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4212
                            f := f copyFrom:4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4213
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4214
                        macro := UserPreferences current functionKeySequences
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4215
                                    at:(f asSymbol) ifAbsent:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4216
                        macro notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4217
                            macro := macro asStringCollection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4218
                            indent := macro
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4219
                                         inject:99999 into:[:min :element |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4220
                                             |stripped|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4221
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4222
                                             stripped := element withoutLeadingSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4223
                                             stripped isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4224
                                                 min
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4225
                                             ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4226
                                                 min min:(element size - stripped size)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4227
                                             ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4228
                                         ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4229
                            indent ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4230
                                macro := macro collect:[:line |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4231
                                             line size > indent ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4232
                                                line copyFrom:indent+1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4233
                                             ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4234
                                                line
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4235
                                             ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4236
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4237
                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4238
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4239
                        macroTextView contents:macro.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4240
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4241
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4242
    list1 := SelectionInList with:listOfRawKeys.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4243
    list1 onChangeSend:#showFunction to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4245
    list2 := SelectionInList with:listOfFunctions.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4246
    list2 onChangeSend:#showRawKey to:selectionForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4247
    list2 onChangeEvaluate:macroForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4248
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4249
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4250
    box label:(resources string:'Keyboard Mappings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4251
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4252
    l := box addTextLabel:(resources at:'KEY_MSG' default:'keyboard mapping:') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4253
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4254
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4255
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4256
    frame extent:300 @ 300.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4257
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4258
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4259
    listView1 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4260
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4261
    listView1 origin:0.0@0.0 corner:0.5@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4262
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4263
    listView2 := ScrollableView for:SelectionInListView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4264
    listView2 model:list2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4265
    listView2 origin:0.5@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4266
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4267
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4268
    box addComponent:frame withExtent:350@200.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4269
    box makeTabable:listView1.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4270
    box makeTabable:listView2.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4271
    frame origin:0.0@0.0 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4272
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4273
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4274
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4275
    l := box addTextLabel:(resources string:'Macro text (if any):') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4276
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4277
    l origin:0.0@0.6 corner:1.0@0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4278
    l topInset:(View viewSpacing).
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4279
    l bottomInset:(l preferredHeight negated - View viewSpacing).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4280
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4281
    macroTextView := HVScrollableView for:TextView miniScroller:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4282
    box addComponent:macroTextView tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4283
    macroTextView origin:0.0@0.6 corner:1.0@1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4284
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4285
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4286
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4287
        addHelpButtonFor:'Launcher/keyboardSetting.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4288
        "addAbortButton;"
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4289
        addOkButtonLabelled:(resources string:'Close' "'Dismiss'").
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4290
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4291
    macroTextView topInset:(l preferredHeight + 5).
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  4292
    macroTextView bottomInset:(box preferredHeight - y).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4293
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4294
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4295
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4296
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4297
        "no action yet ..."
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4298
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4299
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4300
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4301
    "Modified: / 9.9.1996 / 22:43:17 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4302
    "Modified: / 4.5.1998 / 12:40:02 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4303
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4304
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4305
languageSettings
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4306
    self languageSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4307
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4308
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4309
languageSettingsFor:requestor
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4310
    "open a dialog on language related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4311
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4312
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4313
    |listOfLanguages translatedLanguages switch box languageList flags resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4314
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4315
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4316
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4317
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4318
     get list of supported languages from the launchers resources ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4319
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4320
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4321
    listOfLanguages := resources at:'LIST_OF_OFFERED_LANGUAGES' default:#('default').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4322
    listOfLanguages := listOfLanguages asOrderedCollection.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4323
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4324
    translatedLanguages := listOfLanguages collect:[:lang | |item|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4325
                                        item := resources string:lang.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4326
                                        item isString ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4327
                                            item
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4328
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4329
                                            item at:1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4330
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4331
                                ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4332
    flags := listOfLanguages collect:[:lang | |item|
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4333
                                        item := resources string:lang.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4334
                                        item isArray ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4335
                                            item at:2
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4336
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4337
                                            nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4338
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4339
                                ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4340
    flags := flags collect:[:nm | |img d| nm notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4341
                                            img := Image fromFile:nm.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4342
                                            img isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4343
                                                d := Smalltalk getPackageDirectoryForPackage:'stx:goodies'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4344
                                                img := Image fromFile:(d construct:nm).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4345
                                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4346
                                        ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4347
                                            nil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4348
                                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4349
                           ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4350
    listOfLanguages := listOfLanguages collect:[:nm | nm copyFrom:'LANG_' size + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4351
    languageList := translatedLanguages with:flags collect:[:lang :flag | LabelAndIcon icon:flag string:lang.].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4352
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4353
    box := ListSelectionBox title:(resources at:'LANG_MSG' default:'Select a Language') withCRs.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4354
    box label:(resources string:'Language Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4355
    box list:languageList.
15954
ee1504092cb5 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15946
diff changeset
  4356
    box initialText:(Smalltalk language , '-' , Smalltalk languageTerritory).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4357
    box action:[:newLanguage |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4358
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4359
            |fontPref idx language oldLanguage territory enc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4360
             answer matchingFonts l screen|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4361
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4362
            idx := translatedLanguages indexOf:newLanguage withoutSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4363
            idx ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4364
                language := listOfLanguages at:idx
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4365
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4366
                language := newLanguage
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4367
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4368
            (language includes:$-) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4369
                l := language asCollectionOfSubstringsSeparatedBy:$-.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4370
                language := l at:1.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4371
                territory := l at:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4372
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4373
            territory isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4374
                territory := language copyTo:2
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4375
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4376
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4377
            "/ check if the new language needs a differently encoded font;
17628
6019f0420dce #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17608
diff changeset
  4378
            "/ ask user to switch font and allow cancelation.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4379
            "/ Otherwise, you are left with unreadable menu & button items ...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4380
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4381
            oldLanguage := UserPreferences current language.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4382
            Smalltalk setLanguage:language asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4383
            ResourcePack flushCachedResourcePacks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4384
            "/ refetch resources ...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4385
            resources := self owningClass classResources.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4386
            fontPref := resources at:'PREFERRED_FONT_ENCODING' default:'iso8859*'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4387
            fontPref := fontPref asLowercase.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4388
            Smalltalk setLanguage:oldLanguage.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4389
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4390
            switch := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4391
            enc := MenuView defaultFont encoding.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4392
            (fontPref match:enc asLowercase) ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4393
                "/ look if there is one at all.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4394
                screen := Screen current.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4395
                matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4396
                matchingFonts isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4397
                    "/ flush and try again - just in case, the font path has changed.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4398
                    screen flushListOfAvailableFonts.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4399
                    matchingFonts := screen listOfAvailableFonts select:[:f | fontPref match:f encoding asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4400
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4401
                matchingFonts isEmpty ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4402
                    (Dialog
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4403
                        confirm:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4404
                                    string:'Your display does not offer any %1-encoded font.\\Change the language anyway ?\ (texts will probably be unreadable then)'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4405
                                      with:fontPref) withCRs)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4406
                    ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4407
                        switch := false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4408
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4409
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4410
                    answer := Dialog
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4411
                                confirmWithCancel:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4412
                                                        string:'menu font is not %1-encoded.\\Change it ?'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4413
                                                        with:fontPref) withCRs
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4414
                                           labels:(resources
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4415
                                                        array:#('Cancel' 'No' 'Yes'))
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4416
                                           default:3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4417
                    answer isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4418
                        switch := false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4419
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4420
                        answer ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4421
                            switch := (requestor fontBoxForEncoding:fontPref)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4422
                        ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4423
                    ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4424
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4425
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4426
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4427
            switch ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4428
                Transcript showCR:'change language to ' , newLanguage , ' ...'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4429
                Smalltalk language:language asSymbol territory:territory asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4430
                "/ ResourcePack flushCachedResourcePacks - already done by language-change
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4431
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4432
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4433
        switch ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4434
            requestor reopenLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4435
            DebugView newDebugger.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4436
        ]
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4437
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4438
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4439
        addHelpButtonFor:'Launcher/languageSetting.html'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4440
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4441
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4442
7431
3f81f2ed64ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7332
diff changeset
  4443
    "Modified: / 09-09-1996 / 22:43:27 / stefan"
3f81f2ed64ed *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7332
diff changeset
  4444
    "Modified: / 19-10-2006 / 22:17:01 / cg"
17628
6019f0420dce #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 17608
diff changeset
  4445
    "Modified (comment): / 24-08-2017 / 14:57:16 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4446
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4447
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4448
memorySettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4449
    "open a dialog on objectMemory related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4450
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4451
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4452
    |box igcLimit igcFreeLimit igcFreeAmount newSpaceSize
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4453
     compressLimit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4454
     oldIncr component fields codeLimit codeTrigger stackLimit resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4455
     fastMoreLimit maxOldSpace models info acceptChannel|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4456
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4457
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4458
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4459
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4460
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4461
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4462
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4463
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4464
    igcLimit := ObjectMemory incrementalGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4465
    igcFreeLimit := ObjectMemory freeSpaceGCLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4466
    igcFreeAmount := ObjectMemory freeSpaceGCAmount asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4467
    newSpaceSize := ObjectMemory newSpaceSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4468
    oldIncr := ObjectMemory oldSpaceIncrement asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4469
    compressLimit := ObjectMemory oldSpaceCompressLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4470
    codeLimit := ObjectMemory dynamicCodeLimit asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4471
    codeTrigger := ObjectMemory dynamicCodeGCTrigger asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4472
    stackLimit := Process defaultMaximumStackSize asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4473
    fastMoreLimit := (ObjectMemory fastMoreOldSpaceLimit:-1) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4474
    maxOldSpace := ObjectMemory maxOldSpace asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4475
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4476
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4477
    info := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4478
    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
  4479
    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
  4480
    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
  4481
    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
  4482
    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
  4483
    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
  4484
    models add:oldIncr.         info add:#(number      'Increase oldSpace in chunks of this size'                      'Oldspace Increment:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4485
    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
  4486
    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
  4487
    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
  4488
    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
  4489
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4490
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4491
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4492
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4493
    fields := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4494
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4495
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4496
    box label:(resources string:'Memory Manager Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4497
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4498
    box 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4499
        addTextLabel:'Warning - invalid settings may result in failures or poor performance
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4500
' , 'You have been warned' allBold , '.' 
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4501
        adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4502
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4503
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4504
    models with:info do:[:m :i |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4505
        |lbl descr conv|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4506
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4507
        conv := i at:1.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4508
        lbl := i at:3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4509
        descr := i at:2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4510
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4511
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4512
                    addLabelledInputField:(resources string:lbl)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4513
                    adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4514
                    on:nil "/ newSpaceSize
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4515
                    tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4516
                    separateAtX:0.7.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4517
        component acceptOnLeave:false.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4518
"/        component converter:(PrintConverter new perform:conv).
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4519
        component model:((TypeConverter on:m) perform:conv).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4520
        component acceptChannel:acceptChannel.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4521
        fields add:component.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4522
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  4523
        box addTextLabel:descr adjust:#left.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4524
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4525
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4526
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4527
    ObjectMemory supportsJustInTimeCompilation ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4528
        (fields at:9) disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4529
        (fields at:10) disable.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4530
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4531
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4532
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4533
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4534
        addHelpButtonFor:'Launcher/memorySettings.html'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4535
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4536
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4537
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4538
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4539
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4540
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4541
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4542
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4543
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4544
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4545
        acceptChannel value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4546
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4547
        igcFreeAmount value ~~ ObjectMemory freeSpaceGCAmount ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4548
            ObjectMemory freeSpaceGCAmount:igcFreeAmount value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4549
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4550
        igcFreeLimit value ~~ ObjectMemory freeSpaceGCLimit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4551
            ObjectMemory freeSpaceGCLimit:igcFreeLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4552
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4553
        igcLimit value ~~ ObjectMemory incrementalGCLimit ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4554
            ObjectMemory incrementalGCLimit:igcLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4555
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4556
        newSpaceSize value ~~ ObjectMemory newSpaceSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4557
            ObjectMemory newSpaceSize:newSpaceSize value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4558
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4559
        oldIncr value ~~ ObjectMemory oldSpaceIncrement ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4560
            ObjectMemory oldSpaceIncrement:oldIncr value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4561
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4562
        stackLimit value ~~ Process defaultMaximumStackSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4563
            Process defaultMaximumStackSize:stackLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4564
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4565
        fastMoreLimit value ~~ (ObjectMemory fastMoreOldSpaceLimit:-1) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4566
            ObjectMemory fastMoreOldSpaceLimit:fastMoreLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4567
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4568
        maxOldSpace value ~~ ObjectMemory maxOldSpace ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4569
            ObjectMemory maxOldSpace:maxOldSpace value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4570
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4571
        ObjectMemory oldSpaceCompressLimit:compressLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4572
        ObjectMemory dynamicCodeLimit:codeLimit value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4573
        ObjectMemory dynamicCodeGCTrigger:codeTrigger value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4574
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4575
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4576
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4577
    "Modified: 27.2.1997 / 16:50:12 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4578
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4579
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4580
messageSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4581
    "open a dialog on infoMessage related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4582
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4583
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4584
    |box vmInfo vmErrors displayErrors classInfos resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4585
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4586
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4587
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4588
    vmInfo := ObjectMemory infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4589
    vmErrors := ObjectMemory debugPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4590
    classInfos := Object infoPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4591
    displayErrors := DeviceWorkstation errorPrinting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4592
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4593
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4594
    box label:(resources string:'Messages').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4595
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4596
    box addCheckBox:(resources string:'VM Info Messages') on:vmInfo.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4597
    box addCheckBox:(resources string:'VM Error Messages') on:vmErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4598
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4599
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4600
    box addCheckBox:(resources string:'Display Error Messages (Xlib, Xtlib, WinAPI ...)') on:displayErrors.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4601
    box addCheckBox:(resources string:'Other Info Messages') on:classInfos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4602
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4603
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4604
    box addHelpButtonFor:'Launcher/messageSettings.html'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4605
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4606
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4607
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4608
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4609
        ObjectMemory infoPrinting:vmInfo value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4610
        ObjectMemory debugPrinting:vmErrors value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4611
        Object infoPrinting:classInfos value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4612
        DeviceWorkstation errorPrinting:displayErrors value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4613
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4614
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4615
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4616
    "Modified: 27.1.1997 / 17:46:01 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4617
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4618
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4619
miscSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4620
    "open a dialog on misc other settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4621
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4622
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4623
    |box pos pos2 check butt shadows takeFocus focusFollowsMouse returnFocus
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4624
     hostNameInLabel showAccelerators
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4625
     preemptive dynamicPrios hostNameInLabelHolder resources
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4626
     activateOnClick opaqueVariablePanelResize opaqueTableColumnResize currentUserPrefs
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4627
     beepEnabled newWindowLabelFormat|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4628
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4629
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4630
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4631
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4632
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4633
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4634
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4635
    shadows := PopUpView shadows asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4636
    beepEnabled := currentUserPrefs beepEnabled asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4637
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4638
    hostNameInLabel := StandardSystemView includeHostNameInLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4639
    hostNameInLabelHolder := hostNameInLabel asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4640
    returnFocus := StandardSystemView returnFocusWhenClosingModalBoxes asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4641
    takeFocus := StandardSystemView takeFocusWhenMapped asValue.
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4642
    focusFollowsMouse := currentUserPrefs focusFollowsMouse asValue.
13761
062e30fef79c Replace references to Diplay with "Screen current" - where appropriate
Stefan Vogel <sv@exept.de>
parents: 13735
diff changeset
  4643
    activateOnClick := (Screen current activateOnClick:nil) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4644
    opaqueVariablePanelResize := currentUserPrefs opaqueVariablePanelResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4645
    opaqueTableColumnResize := currentUserPrefs opaqueTableColumnResizing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4646
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4647
    showAccelerators := MenuView showAcceleratorKeys asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4648
    preemptive := Processor isTimeSlicing asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4649
    dynamicPrios := Processor supportDynamicPriorities asValue.
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
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4653
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4654
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4655
    box label:(resources string:'Other settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4656
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4657
    box addCheckBox:(resources string:'Shadows under PopUp Views') on:shadows.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4658
    box addCheckBox:(resources string:'Beeper enabled') on:beepEnabled.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4659
    box addCheckBox:(resources string:'Boxes Return Focus to Previously Active View') on:returnFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4660
    box addCheckBox:(resources string:'Views Catch Focus when Mapped') on:takeFocus.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4661
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4662
    check := box addCheckBox:(resources string:'Hostname in Window Labels') on:hostNameInLabelHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4663
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4664
    pos2 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4665
    box yPosition:pos.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4666
    butt := box addComponent:(Button label:(resources string:'Format...')
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4667
               action:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4668
                       |newFormat|
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4669
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4670
                       newFormat := Dialog request:
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4671
                                        'Define the Format of Window Labels:\\  %1 - Label\  %2 - Hostname\  %3 - Username\  %4 - ProcessId\'
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4672
                                           withCRs initialAnswer:StandardSystemView windowLabelFormat.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4673
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  4674
                       newFormat notEmptyOrNil ifTrue:[
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4675
                           newWindowLabelFormat := newFormat
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4676
                       ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4677
                      ]).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4678
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4679
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4680
    box yPosition:(box yPosition max:pos2).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4681
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4682
    box addCheckBox:(resources string:'Show Accelerator Keys in Menus') on:showAccelerators.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4683
    box addCheckBox:(resources string:'Raise & Activate Windows on Click') on:activateOnClick.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4684
    box addCheckBox:(resources string:'Focus Follows Mouse') on:focusFollowsMouse.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4685
    box addCheckBox:(resources string:'Opaque Variable Panel Resizing') on:opaqueVariablePanelResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4686
    box addCheckBox:(resources string:'Opaque Table Column Resizing') on:opaqueTableColumnResize.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4687
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4688
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4689
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4690
    box addCheckBox:(resources string:'Preemptive Scheduling') on:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4691
    box leftIndent:20.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4692
    check := box addCheckBox:(resources string:'Dynamic Priorities') on:dynamicPrios.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4693
    check enableChannel:preemptive.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4694
    box leftIndent:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4695
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4696
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4697
    box
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4698
        addHelpButtonFor:'Launcher/miscSettings.html';
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4699
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4700
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4701
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4702
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4703
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4704
    box open.
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
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4708
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4709
    box accepted ifTrue:[
9941
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4710
        PopUpView shadows:shadows value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4711
        (hostNameInLabelHolder value ~= hostNameInLabel
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4712
        or:[newWindowLabelFormat ~= StandardSystemView windowLabelFormat]) ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4713
            StandardSystemView includeHostNameInLabel:hostNameInLabelHolder value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4714
            newWindowLabelFormat notNil ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4715
                StandardSystemView windowLabelFormat:newWindowLabelFormat
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4716
            ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4717
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4718
            Screen allScreens do:[:aDisplay |
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4719
                aDisplay allViewsDo:[:aView |
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4720
                    |l|
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4721
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4722
                    aView isTopView ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4723
                        l := aView label.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4724
                        l notNil ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4725
                            aView label:(l , ' '); label:l.  "/ force a change
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4726
                        ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4727
                    ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4728
                ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4729
            ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4730
        ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4731
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4732
        currentUserPrefs opaqueVariablePanelResizing:opaqueVariablePanelResize value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4733
        currentUserPrefs opaqueTableColumnResizing:opaqueTableColumnResize value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4734
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4735
        currentUserPrefs beepEnabled:beepEnabled value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4736
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4737
        StandardSystemView returnFocusWhenClosingModalBoxes:returnFocus value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4738
        StandardSystemView takeFocusWhenMapped:takeFocus value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4739
        currentUserPrefs focusFollowsMouse:focusFollowsMouse value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4740
        Screen current activateOnClick:(activateOnClick value).
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4741
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4742
        MenuView showAcceleratorKeys:showAccelerators value.
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4743
        Processor isTimeSlicing ~~ preemptive value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4744
            preemptive value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4745
                Processor startTimeSlicing
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4746
            ] ifFalse:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4747
                Processor stopTimeSlicing
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4748
            ]
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4749
        ].
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4750
        Processor supportDynamicPriorities ~~ dynamicPrios value ifTrue:[
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4751
            Processor supportDynamicPriorities:dynamicPrios value
08309b8378fc fix default for focusFollowsMouse
Stefan Vogel <sv@exept.de>
parents: 9932
diff changeset
  4752
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4753
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4754
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4755
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  4756
    "Modified: / 09-09-1996 / 22:43:36 / stefan"
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  4757
    "Modified: / 03-12-1999 / 17:11:38 / ps"
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  4758
    "Modified: / 17-02-2017 / 08:26:12 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4759
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4760
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4761
printerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4762
    "open a dialog on printer related settings; returns true if accepted.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  4763
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4764
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4765
    |box accepted
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4766
     possiblePrinters possibleTypes printerType printCommand printFile
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4767
     pageFormat landscape updater
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4768
     formatLabel formatComponent landscapeLabel landscapeComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4769
     topMargin leftMargin rightMargin bottomMargin unitList unit
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4770
     topMarginComponent leftMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4771
     rightMarginComponent
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4772
     bottomMarginComponent supportsColor supportsColorComponent
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4773
     y y1 commandListPop printOutField component commandList row resources|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4774
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4775
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4776
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4777
    possiblePrinters := PrinterStream withAllSubclasses asArray.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4778
    possibleTypes := possiblePrinters collect:[:cls | cls printerTypeName].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4779
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4780
    printerType := SelectionInList new list:(resources array:possibleTypes).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4781
    printerType selectionIndex:(possiblePrinters identityIndexOf:Printer).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4782
    printCommand := Printer printCommand asValue.
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4783
    printFile := (Printer printFilename ? '') asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4784
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4785
    pageFormat := SelectionInList new list:(Printer defaultPageFormats).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4786
    pageFormat selection:(Printer pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4787
    landscape := Printer landscape asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4788
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4789
    topMargin := Printer topMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4790
    leftMargin := Printer leftMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4791
    rightMargin := Printer rightMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4792
    bottomMargin := Printer bottomMargin asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4793
    supportsColor := Printer supportsColor asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4794
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4795
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4796
    box label:(resources string:'Printer Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4797
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4798
"/ either use a popUpList ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4799
"/    box addPopUpList:(resources string:'printer type:') on:printerType.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4800
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4801
"/ or a comboList;
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4802
"/ which one looks better ?
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4803
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4804
    component := box addTextLabel:(resources string:'Printer Type:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4805
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4806
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4807
    component := box addComboListOn:printerType tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4808
    component aspect:#selectionIndex; changeMessage:#selectionIndex:; useIndex:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4809
    component width:0.75; left:0.25.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4810
"/ end of question
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4811
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4812
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4813
    component := box addTextLabel:(resources string:'Print Command:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4814
    component width:0.25; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4815
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4816
    commandListPop := box addComboBoxOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4817
"/    commandListPop := box addInputFieldOn:printCommand tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4818
    commandListPop width:0.75; left:0.25; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4819
    "/ some common print commands ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4820
6637
874c6de40070 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6621
diff changeset
  4821
    commandList := resources string:'PRINT_COMMANDS' default:nil.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4822
    commandList isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4823
        commandList := PrinterStream defaultCommands.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4824
        commandList isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4825
            commandList := #('lpr'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4826
                             'lp'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4827
                            ).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4828
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4829
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4830
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4831
    commandListPop list:commandList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4832
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4833
    y := box yPosition.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4834
    component := box addTextLabel:(resources string:'Print to File:').
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4835
    component width:0.25; adjust:#right; borderWidth:0.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4836
    box yPosition:y.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4837
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4838
    printOutField := box addInputFieldOn:printFile tabable:true.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4839
    printOutField width:0.75; left:0.25; immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4840
    printFile
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4841
        onChangeEvaluate:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4842
            [
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  4843
                printFile value notEmptyOrNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4844
                    commandListPop disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4845
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4846
                    commandListPop enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4847
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4848
            ].
5181
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4849
    printFile changed.
d2a4bb23ea50 allow printing into a file.
Claus Gittinger <cg@exept.de>
parents: 5169
diff changeset
  4850
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4851
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4852
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4853
    row := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4854
    row add:(formatLabel := Label label:(resources string:'Page Format:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4855
    formatLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4856
    row add:(formatComponent := PopUpList on:pageFormat).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4857
    formatComponent label:'unknown'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4858
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4859
    row add:(landscapeLabel := Label label:(resources string:'Landscape:')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4860
    landscapeLabel borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4861
    row add:(landscapeComponent := CheckToggle on:landscape).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4862
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4863
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4864
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4865
        addRow:(1 to:2)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4866
        fromX:0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4867
        toX:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4868
        collect:[:idx | row at:idx]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4869
        tabable:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4870
        horizontalLayout:#leftSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4871
        verticalLayout:#center.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4872
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4873
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4874
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4875
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4876
        addRow:(3 to:4)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4877
        fromX:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4878
        toX:1.0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4879
        collect:[:idx | row at:idx]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4880
        tabable:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4881
        horizontalLayout:#leftSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4882
        verticalLayout:#center.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4883
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4884
    box yPosition:(box yPosition max:y1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4885
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4886
    box makeTabable:(formatComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4887
    box makeTabable:(landscapeComponent).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4888
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4889
    box addVerticalSpace; addHorizontalLine; addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4890
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4891
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4892
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4893
    topMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4894
        addLabelledInputField:(resources string:'Top Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4895
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4896
        on:nil "/ topMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4897
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4898
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4899
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4900
    topMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4901
    topMarginComponent model:topMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4902
    y1 := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4903
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4904
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4905
    unitList := SelectionInList with:#('inch' 'mm').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4906
    unitList selectionIndex:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4907
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4908
    component := box addComponent:(PopUpList on:unitList).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4909
    component
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4910
        left:0.6;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4911
        width:0.3.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4912
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4913
    box yPosition:y1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4914
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4915
    leftMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4916
        addLabelledInputField:(resources string:'Left Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4917
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4918
        on:nil "/ leftMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4919
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4920
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4921
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4922
    leftMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4923
    leftMarginComponent model:leftMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4924
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4925
    rightMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4926
        addLabelledInputField:(resources string:'Right Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4927
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4928
        on:nil "/ rightMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4929
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4930
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4931
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4932
    rightMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4933
    rightMarginComponent model:rightMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4934
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  4935
    bottomMarginComponent := box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4936
        addLabelledInputField:(resources string:'Bottom Margin:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4937
        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4938
        on:nil "/ bottomMargin
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4939
        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4940
        from:0.0 to:0.5
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4941
        separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4942
    bottomMarginComponent converter:(PrintConverter new initForNumber).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4943
    bottomMarginComponent model:bottomMargin.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4944
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4945
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4946
    supportsColorComponent := box addCheckBox:(resources string:'Color Printer') on:supportsColor.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4947
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4948
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4949
    updater := [ |p fg hasPageSize hasMargins|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  4950
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4951
                       printerType selectionIndex ~~ 0 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4952
                           p := possiblePrinters at:(printerType selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4953
                           hasPageSize := p supportsPageSizes.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4954
                           hasMargins := p supportsMargins.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4955
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4956
                           hasPageSize := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4957
                           hasMargins := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4958
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4959
                       hasPageSize ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4960
                          fg := Button new foregroundColor.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4961
                          formatComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4962
                          landscapeComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4963
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4964
                          formatComponent label:p pageFormat.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4965
                          pageFormat value:(p pageFormat).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4966
                          landscape value:(p landscape).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4967
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4968
                          fg := Button new disabledForegroundColor.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4969
                          formatComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4970
                          landscapeComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4971
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4972
                          formatComponent label:'unknown'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4973
                          landscape value:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4974
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4975
                       hasMargins ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4976
                          unitList selectionIndex == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4977
                              unit := #mm
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4978
                          ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4979
                              unit := #inch
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4980
                          ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4981
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4982
                          topMargin value:(UnitConverter convert:p topMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4983
                          leftMargin value:(UnitConverter convert:p leftMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4984
                          rightMargin value:(UnitConverter convert:p rightMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4985
                          bottomMargin value:(UnitConverter convert:p bottomMargin from:#inch to:unit).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4986
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4987
                          topMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4988
                          leftMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4989
                          rightMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4990
                          bottomMarginComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4991
                       ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4992
                          topMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4993
                          leftMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4994
                          rightMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4995
                          bottomMarginComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4996
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4997
                       formatLabel foregroundColor:fg.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4998
                       landscapeLabel foregroundColor:fg.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  4999
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5000
                       p notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5001
                           commandList := p defaultCommands.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5002
                           commandList notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5003
                                commandListPop list:commandList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5004
                           ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5005
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5006
                           printCommand value:(p printCommand).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5007
                       ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5008
                       p supportsPostscript ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5009
                           supportsColorComponent disable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5010
                           supportsColor value:false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5011
                       ] ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5012
                           supportsColorComponent enable.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5013
                           supportsColor value:(Printer supportsColor).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5014
                       ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5015
                     ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5016
    unitList onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5017
    printerType onChangeEvaluate:updater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5018
    updater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5019
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5020
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5021
    box addVerticalSpace;
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5022
        addHelpButtonFor:'Launcher/printerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5023
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5024
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5025
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5026
    (accepted := box accepted) ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5027
        Printer := possiblePrinters at:(printerType selectionIndex).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5028
        Printer printCommand:printCommand value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5029
        Printer printFilename:(printFile value isEmptyOrNil ifTrue:[nil] ifFalse:[printFile value]).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5030
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5031
        Printer supportsPageSizes ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5032
            Printer pageFormat:(pageFormat selection).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5033
            Printer landscape:(landscape value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5034
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5035
        Printer supportsMargins ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5036
            unitList selectionIndex == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5037
                unit := #mm
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5038
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5039
                unit := #inch
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5040
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5041
            Printer topMargin:(UnitConverter convert:topMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5042
            Printer leftMargin:(UnitConverter convert:leftMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5043
            Printer rightMargin:(UnitConverter convert:rightMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5044
            Printer bottomMargin:(UnitConverter convert:bottomMargin value from:unit to:#inch).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5045
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5046
        Printer supportsPostscript ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5047
            Printer supportsColor:supportsColor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5048
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5049
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5050
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5051
    ^ accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5052
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  5053
    "Modified: / 09-09-1996 / 22:43:51 / stefan"
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  5054
    "Modified: / 17-02-2017 / 08:26:20 / cg"
4244
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
saveSettings
5465
2c1dc7101e03 *** empty log message ***
ca
parents: 5464
diff changeset
  5058
    SettingsDialog saveSettingsWithoutAskingForFile.
4244
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
sourceAndDebuggerSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5062
    "open a dialog on source&debugger other settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5063
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5064
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5065
    |box check butt setupButt logDoits updChanges changeFileName
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5066
     useManager hasManager cvsIsSetup
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5067
     repository repositoryHolder localSourceFirst
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5068
     sourceCacheDir cacheEntry
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5069
     component localCheck oldIndent nm fn manager
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5070
     showErrorNotifier showVerboseStack
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5071
     syntaxColoring fullSelectorCheck autoFormat
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5072
     resources pos currentUserPrefs checkClassesWhenCheckingIn checkClassesBox|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5073
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5074
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5075
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5076
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5077
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5078
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5079
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5080
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5081
    logDoits := Smalltalk logDoits asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5082
    updChanges := Class updatingChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5083
    changeFileName := ObjectMemory nameForChanges asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5084
4840
4f74aeb5e4d2 autoload is understood by all classes (dummy if already loaded)
Claus Gittinger <cg@exept.de>
parents: 4766
diff changeset
  5085
    AbstractSourceCodeManager notNil ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5086
        AbstractSourceCodeManager autoload.
4244
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
    hasManager := AbstractSourceCodeManager notNil
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5090
                  and:[AbstractSourceCodeManager isLoaded].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5091
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5092
    repositoryHolder := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5093
    hasManager ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5094
        useManager := (manager := Smalltalk at:#SourceCodeManager) notNil asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5095
        localSourceFirst := Class tryLocalSourceFirst asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5096
        manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5097
            manager forgetDisabledModules.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5098
            repository := manager repositoryName.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5099
            repository notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5100
                repositoryHolder := repository asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5101
            ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5102
                repositoryHolder := '' asValue.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5103
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5104
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5105
        cvsIsSetup := true.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5106
    ] ifFalse:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5107
        useManager := false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5108
        localSourceFirst := false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5109
        cvsIsSetup := false.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5110
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5111
    cvsIsSetup := cvsIsSetup asValue.
4566
af369740e2bc Replace referneces to Exception.
Stefan Vogel <sv@exept.de>
parents: 4552
diff changeset
  5112
    showErrorNotifier := (NoHandlerError emergencyHandler == AbstractLauncherApplication notifyingEmergencyHandler) asValue.
8150
f7143e697cbf *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 8117
diff changeset
  5113
    showVerboseStack := (currentUserPrefs verboseBacktraceInDebugger) asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5114
    syntaxColoring := currentUserPrefs syntaxColoring asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5115
    fullSelectorCheck := currentUserPrefs fullSelectorCheck asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5116
    autoFormat := currentUserPrefs autoFormatting asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5117
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5118
    sourceCacheDir := nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5119
    checkClassesWhenCheckingIn := (currentUserPrefs at:#checkClassesWhenCheckingIn ifAbsent:true) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5120
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5121
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5122
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5123
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5124
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5125
    box label:(resources string:'Source & Debugger Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5126
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5127
    box addCheckBox:(resources string:'Log compiles in Changefile') on:updChanges.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5128
    box addCheckBox:(resources string:'Log doIts in Changefile') on:logDoits.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5129
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5130
    component := box
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5131
                    addLabelledInputField:(resources string:'Changefile Name:')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5132
                    adjust:#right
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5133
                    on:changeFileName
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5134
                    tabable:true
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5135
                    separateAtX:0.4.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5136
    component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5137
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5138
"/    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5139
"/    component := box addTextLabel:(resources string:'change file name:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5140
"/    component width:0.5; adjust:#right; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5141
"/    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5142
"/    component := box addInputFieldOn:changeFileName tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5143
"/    component width:0.5; left:0.5; immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5144
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5145
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5146
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5147
    hasManager ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5148
        pos := box yPosition.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5149
        check := box addCheckBox:(resources string:'Sourcecode Management') on:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5150
        check enableChannel:cvsIsSetup.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5151
        box makeTabable:check.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5152
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5153
        CVSSourceCodeManager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5154
            check width:0.6.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5155
            box yPosition:pos.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5156
            setupButt := box addComponent:(Button label:(resources string:'Setup...')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5157
                       action:[|manager|
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5158
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5159
                               self cvsConfigurationDialog.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5160
                               manager := (Smalltalk at:#SourceCodeManager).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5161
                               cvsIsSetup value:manager notNil.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5162
                               manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5163
                                    repositoryHolder value: manager repositoryName.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5164
                                    sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5165
                               ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5166
                              ]).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5167
            setupButt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5168
            box makeTabable:setupButt.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5169
            setupButt left:0.6; width:0.4.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5170
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5171
        oldIndent := box leftIndent.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5172
        box leftIndent:30.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5173
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5174
        box addVerticalSpace:10.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5175
"/        component := box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5176
"/                        addLabelledInputField:(resources string:'CVS repository:')
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5177
"/                        adjust:#right
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5178
"/                        on:repositoryHolder
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5179
"/                        tabable:true
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5180
"/                        separateAtX:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5181
"/        component immediateAccept:true; acceptOnLeave:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5182
"/        component enableChannel:useManager.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5183
"/        component readOnly:true.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5184
"/
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5185
        cacheEntry := box
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5186
                        addLabelledInputField:(resources string:'Source Cache Dir:')
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5187
                        adjust:#right
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5188
                        on:sourceCacheDir
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5189
                        tabable:true
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5190
                        separateAtX:0.5.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5191
        cacheEntry immediateAccept:true; acceptOnLeave:false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5192
        cacheEntry enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5193
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5194
        pos := box yPosition.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5195
        butt := Button label:(resources string:'Flush Cache now').
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5196
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager flushSourceCache ] ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5197
        box addComponent:butt tabable:true.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5198
        butt left:0.6; width:0.4; leftInset:0.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5199
        butt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5200
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5201
        butt := Button label:(resources string:'Condense Cache now').
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5202
        butt action:[ box withWaitCursorDo:[ AbstractSourceCodeManager condenseSourceCache ] ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5203
        box addComponent:butt tabable:true.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5204
        butt left:0.6; width:0.4; leftInset:0.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5205
        butt enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5206
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5207
        localCheck := box addCheckBox:(resources string:'If Present, Use Local Source (Suppress Checkout)') on:localSourceFirst.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5208
        localCheck enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5209
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5210
        checkClassesBox := box addCheckBox:(resources string:'Check for halt/error-Sends when Checking in') on:checkClassesWhenCheckingIn.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5211
        checkClassesBox enableChannel:useManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5212
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5213
        box leftIndent:oldIndent.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5214
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5215
        (AbstractSourceCodeManager isNil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5216
        or:[AbstractSourceCodeManager defaultManager isNil]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5217
            useManager value:false.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5218
            "/ cacheEntry disable.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5219
            "/ localCheck enable.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5220
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5221
            sourceCacheDir value:(AbstractSourceCodeManager cacheDirectoryName).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5222
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5223
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5224
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5225
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5226
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5227
    check := box addCheckBox:(resources string:'Syntax Coloring') on:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5228
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5229
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5230
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self syntaxColorConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5231
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5232
    butt enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5233
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5234
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5235
    check := box addCheckBox:(resources string:'Immediate Selector Check') on:fullSelectorCheck.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5236
    check enableChannel:syntaxColoring.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5237
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5238
    pos := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5239
    check := box addCheckBox:(resources string:'Auto Format') on:autoFormat.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5240
    check width:0.6.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5241
    box yPosition:pos.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5242
    butt := box addComponent:(Button label:(resources string:'Configure...') action:[self formattingConfigurationDialog]).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5243
    box makeTabable:butt.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5244
    butt left:0.6; width:0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5245
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5246
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5247
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5248
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5249
    box addCheckBox:(resources string:'Show Error Notifier before Opening Debugger') on:showErrorNotifier.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5250
    box addCheckBox:(resources string:'Verbose Backtrace by Default in Debugger') on:showVerboseStack.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5251
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5252
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5253
    box
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5254
        addHelpButtonFor:'Launcher/sourceSettings.html';
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5255
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5256
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5257
    box maxExtent:1000@600.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5258
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5259
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5260
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5261
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5262
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5263
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5264
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5265
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5266
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5267
    box accepted ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5268
        Smalltalk logDoits:logDoits value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5269
        Class updateChanges:updChanges value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5270
        ObjectMemory nameForChanges:(changeFileName value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5271
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5272
        (hasManager and:[useManager value]) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5273
            manager isNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5274
                Smalltalk at:#SourceCodeManager put:(AbstractSourceCodeManager defaultManager).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5275
                manager := Smalltalk at:#SourceCodeManager.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5276
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5277
            Class tryLocalSourceFirst:(localSourceFirst value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5278
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5279
            manager notNil ifTrue:[
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5280
"/                localSourceFirst value ifFalse:[
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5281
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5282
                    nm := sourceCacheDir value.
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  5283
                    nm notEmptyOrNil ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5284
                        (fn := nm asFilename) exists ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5285
                            (self confirm:('CVS cache directory ''' , nm , ''' does not exist\create ?' withCRs)) ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5286
                                fn makeDirectory;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5287
                                   makeReadableForAll;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5288
                                   makeWritableForAll;
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5289
                                   makeExecutableForAll.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5290
                            ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5291
                        ].
13241
429439b91d57 Use #isWritableDirectory
Stefan Vogel <sv@exept.de>
parents: 13150
diff changeset
  5292
                        (fn isWritableDirectory and:[fn isReadable]) ifTrue:[
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5293
                            AbstractSourceCodeManager cacheDirectoryName:(sourceCacheDir value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5294
                        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5295
                            self warn:'Invalid sourceCache directory.'
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5296
                        ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5297
                    ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5298
"/                ]
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5299
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5300
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5301
            repositoryHolder notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5302
                repositoryHolder value size > 0 ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5303
                    manager notNil ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5304
                        manager initializeForRepository:repositoryHolder value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5305
                    ]
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5306
                ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5307
            ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5308
        ] ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5309
            Smalltalk at:#SourceCodeManager put:nil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5310
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5311
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5312
        showErrorNotifier value ifFalse:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5313
            NoHandlerError emergencyHandler:nil
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5314
        ] ifTrue:[
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5315
            NoHandlerError emergencyHandler:(AbstractLauncherApplication notifyingEmergencyHandler)
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5316
        ].
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5317
        currentUserPrefs verboseBacktraceInDebugger:(showVerboseStack value).
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5318
        currentUserPrefs syntaxColoring:syntaxColoring value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5319
        currentUserPrefs at:#fullSelectorCheck put:fullSelectorCheck value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5320
        currentUserPrefs autoFormatting:autoFormat value.
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5321
14683
1fd9d79bd0e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14682
diff changeset
  5322
        currentUserPrefs at:#checkClassesWhenCheckingIn put:checkClassesWhenCheckingIn value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5323
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5324
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5325
9753
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5326
    "Modified: / 09-09-1996 / 22:43:36 / stefan"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5327
    "Created: / 17-01-1997 / 17:39:33 / cg"
Claus Gittinger <cg@exept.de>
parents: 9748
diff changeset
  5328
    "Modified: / 16-04-1998 / 17:18:47 / ca"
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  5329
    "Modified: / 17-02-2017 / 08:26:27 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5330
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5331
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5332
stcCompilerSettings
6539
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5333
    "open an extra dialog on stc-compiler related settings.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5334
     Obsoleted by STCCompilerSettingsApp"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5335
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5336
    |box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5337
     stcIncludes stcDefines stcOptions
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5338
     stcLibraries stcLibraryPath cc stc ccOptions
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5339
     linkCommand linkArgs
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5340
     component
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5341
     canLoadBinaries
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5342
     resources|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5343
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5344
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5345
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5346
    canLoadBinaries := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5347
6539
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5348
    stcIncludes := ParserFlags stcCompilationIncludes asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5349
    stcDefines := ParserFlags stcCompilationDefines asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5350
    stcOptions := ParserFlags stcCompilationOptions asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5351
    ccOptions := ParserFlags ccCompilationOptions asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5352
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5353
    cc := ParserFlags ccPath asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5354
    stc := ParserFlags stcPath asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5355
    linkCommand := ParserFlags linkCommand asValue.
e8f5b6806c27 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6538
diff changeset
  5356
    linkArgs := ParserFlags linkArgs asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5357
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5358
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5359
        | t |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5360
        (t := ParserFlags searchedLibraries) notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5361
            stcLibraries := (String fromStringCollection:t separatedBy:' ') asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5362
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5363
        (t := ParserFlags libPath) notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5364
            stcLibraryPath := t asValue.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5365
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5366
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5367
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5368
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5369
    box label:(resources string:'STC Compilation Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5370
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5371
    ObjectFileLoader notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5372
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5373
                        addLabelledInputField:(resources string:'stc Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5374
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5375
                        on:stc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5376
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5377
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5378
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5379
        component preferredExtent:(100 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5380
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5381
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5382
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5383
                        addLabelledInputField:(resources string:'stc Options:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5384
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5385
                        on:stcOptions
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5386
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5387
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5388
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5389
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5390
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5391
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5392
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5393
                        addLabelledInputField:(resources string:'cc Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5394
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5395
                        on:cc
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5396
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5397
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5398
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5399
        component preferredExtent:(150 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5400
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5401
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5402
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5403
                        addLabelledInputField:(resources string:'cc Options:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5404
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5405
                        on:ccOptions
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5406
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5407
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5408
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5409
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5410
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5411
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5412
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5413
                        addLabelledInputField:(resources string:'Include Directories:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5414
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5415
                        on:stcIncludes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5416
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5417
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5418
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5419
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5420
        canLoadBinaries ifFalse:[component disable].
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5421
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5422
"/        box addVerticalSpace.
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5423
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5424
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5425
                        addLabelledInputField:(resources string:'Defines:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5426
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5427
                        on:stcDefines
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5428
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5429
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5430
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5431
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5432
        canLoadBinaries ifFalse:[component disable].
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5433
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5434
"/        box addVerticalSpace.
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5435
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5436
"/        box addVerticalSpace.
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5437
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5438
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5439
                        addLabelledInputField:(resources string:'Link Command:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5440
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5441
                        on:linkCommand
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5442
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5443
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5444
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5445
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5446
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5447
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5448
        component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5449
                        addLabelledInputField:(resources string:'Link Args:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5450
                        adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5451
                        on:linkArgs
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5452
                        tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5453
                        separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5454
        component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5455
        component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5456
        canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5457
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5458
        stcLibraries notNil ifTrue:[
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5459
"/            box addVerticalSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5460
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5461
            component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5462
                            addLabelledInputField:(resources string:'C-libraries:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5463
                            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5464
                            on:stcLibraries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5465
                            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5466
                            separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5467
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5468
            component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5469
            canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5470
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5471
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5472
        stcLibraryPath notNil ifTrue:[
5277
d08adb84ea30 fixed compiler settings - removed #always option for stc
Michael Beyl <mb@exept.de>
parents: 5210
diff changeset
  5473
"/            box addVerticalSpace.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5474
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5475
            component := box
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5476
                            addLabelledInputField:(resources string:'stc LibPath:')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5477
                            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5478
                            on:stcLibraryPath
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5479
                            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5480
                            separateAtX:0.3.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5481
            component immediateAccept:true; acceptOnLeave:false; cursorMovementWhenUpdating:#beginOfLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5482
            component preferredExtent:(250 @ component preferredHeight).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5483
            canLoadBinaries ifFalse:[component disable].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5484
        ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5485
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5486
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5487
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5488
        addHelpButtonFor:'Launcher/compilerSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5489
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5490
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5491
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5492
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5493
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5494
        ParserFlags stcCompilationIncludes:stcIncludes value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5495
        ParserFlags stcCompilationDefines:stcDefines value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5496
        ParserFlags stcCompilationOptions:stcOptions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5497
        ParserFlags ccCompilationOptions:ccOptions value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5498
        ParserFlags ccPath:cc value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5499
        stc value ~= ParserFlags stcPath ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5500
            ParserFlags stcPath:stc value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5501
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5502
        ParserFlags linkCommand:linkCommand value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5503
        ParserFlags linkArgs:linkArgs value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5504
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5505
        ObjectFileLoader notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5506
            stcLibraries notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5507
                ParserFlags searchedLibraries:(stcLibraries value asCollectionOfWords).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5508
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5509
            stcLibraryPath notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5510
                ParserFlags libPath:(stcLibraryPath value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5511
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5512
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5513
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5514
    box destroy
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5515
"
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5516
    self stcCompilerSettings
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5517
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5518
    "Modified: / 10.9.1995 / 19:19:18 / claus"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5519
    "Modified: / 9.9.1996 / 22:42:47 / stefan"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5520
    "Created: / 2.10.1998 / 16:27:49 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5521
    "Modified: / 21.10.1998 / 19:15:10 / cg"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5522
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5523
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5524
toolSettings
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5525
    "open a dialog on tool settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5526
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5527
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5528
    |box resources currentUserPrefs in acceptChannel
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5529
     useNewInspector useNewChangesBrowser useNewSystemBrowser useNewVersionDiffBrowser
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5530
     useNewFileBrowser showClockInLauncher showClock launcher
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5531
     transcriptBufferSize useNewFileDialog useNewSettingsApplication useProcessMonitorV2
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5532
     currentTranscript|
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5533
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5534
    currentTranscript := Transcript current.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5535
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5536
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5537
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5538
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5539
    "/
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5540
    "/ extract relevant system settings ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5541
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5542
    useNewInspector := currentUserPrefs useNewInspector asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5543
    useNewChangesBrowser := currentUserPrefs useNewChangesBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5544
    useNewSystemBrowser := currentUserPrefs useNewSystemBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5545
    showClockInLauncher := currentUserPrefs showClockInLauncher asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5546
    useNewVersionDiffBrowser := currentUserPrefs useNewVersionDiffBrowser asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5547
    useNewFileBrowser := currentUserPrefs useNewFileBrowser asValue.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5548
    useNewFileDialog := currentUserPrefs useNewFileDialog asValue.
4386
9e11f7a0936e change the settingsApplication list
penk
parents: 4385
diff changeset
  5549
    useNewSettingsApplication := currentUserPrefs useNewSettingsApplication asValue.
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5550
    useProcessMonitorV2 := currentUserPrefs useProcessMonitorV2 asValue.
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5551
    currentTranscript isExternalStream ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5552
        transcriptBufferSize := TextCollector defaultLineLimit
5629
2cb05ef96502 care for nonPosStream transcript
Claus Gittinger <cg@exept.de>
parents: 5623
diff changeset
  5553
    ] ifFalse:[
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5554
        transcriptBufferSize := currentTranscript lineLimit printString asValue.
5629
2cb05ef96502 care for nonPosStream transcript
Claus Gittinger <cg@exept.de>
parents: 5623
diff changeset
  5555
    ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5556
    acceptChannel := false asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5557
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5558
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5559
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5560
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5561
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5562
    box label:(resources string:'Tool Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5563
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5564
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5565
    box addCheckBox:(resources string:'Use the New System Browser') on:useNewSystemBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5566
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5567
    box addCheckBox:(resources string:'Use the New VersionDiff Browser') on:useNewVersionDiffBrowser.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5568
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5569
    (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5570
        box addCheckBox:(resources string:'Use the New File Browser') on:useNewFileBrowser.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5571
        box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5572
    ].
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5573
    (Smalltalk at:#FileDialog) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5574
        box addCheckBox:(resources string:'Use the New File Dialog') on:useNewFileDialog.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5575
        box addHorizontalLine.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5576
    ].
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5577
    (Smalltalk at:#SettingsDialog) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5578
        box addCheckBox:(resources string:'Use the New Settings Dialog') on:useNewSettingsApplication.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5579
        box addHorizontalLine.
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5580
    ].
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5581
    (Smalltalk at:#ProcessMonitorV2) isBehavior ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5582
        box addCheckBox:(resources string:'Use the New ProcessMonitor') on:useProcessMonitorV2.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5583
        box addHorizontalLine.
4464
997576abcb7f add ProcessMonitorV2 access from menu dependent on userPreferences
penk
parents: 4456
diff changeset
  5584
    ].
4936
ed126a4cc771 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4914
diff changeset
  5585
    box addCheckBox:(resources string:'Use the New Changes Browser') on:useNewChangesBrowser.
ed126a4cc771 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4914
diff changeset
  5586
    box addHorizontalLine.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5587
    box addCheckBox:(resources string:'Use Hierarchical Inspector') on:useNewInspector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5588
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5589
    box addCheckBox:(resources string:'Show Clock in Launcher') on:showClockInLauncher.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5590
    box addHorizontalLine.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5591
    in := box
18406
b29e42efb930 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18334
diff changeset
  5592
            addLabelledInputField:(resources string:'Transcript''s Buffer Size:')
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5593
            adjust:#right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5594
            on:transcriptBufferSize
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5595
            tabable:true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5596
            separateAtX:0.6.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5597
    in acceptChannel:acceptChannel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5598
    box addHorizontalLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5599
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5600
    box
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5601
        addHelpButtonFor:'Launcher/toolSettings.html';
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5602
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5603
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5604
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5605
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5606
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5607
    box open.
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
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5611
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5612
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5613
        acceptChannel value:false; value:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5614
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5615
        currentUserPrefs useNewInspector:useNewInspector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5616
        currentUserPrefs useNewChangesBrowser:useNewChangesBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5617
        currentUserPrefs useNewSystemBrowser:useNewSystemBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5618
        currentUserPrefs useNewVersionDiffBrowser:useNewVersionDiffBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5619
        currentUserPrefs useNewFileBrowser:useNewFileBrowser value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5620
        currentUserPrefs useNewFileDialog:useNewFileDialog value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5621
        currentUserPrefs useProcessMonitorV2:useProcessMonitorV2 value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5622
        currentUserPrefs useNewSettingsApplication ~= useNewSettingsApplication value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5623
            currentUserPrefs useNewSettingsApplication:useNewSettingsApplication value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5624
            NewLauncher open.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5625
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5626
        (Smalltalk at:#FileBrowserV2) isBehavior ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5627
            useNewFileBrowser value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5628
                FileBrowserV2 installInLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5629
            ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5630
                FileBrowserV2 isLoaded ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5631
                    FileBrowserV2 removeFromLauncher.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5632
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5633
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5634
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5635
        showClock := showClockInLauncher value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5636
        currentUserPrefs showClockInLauncher ~= showClock ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5637
            currentUserPrefs showClockInLauncher:showClock.
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5638
            currentTranscript isExternalStream ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5639
                launcher := Transcript application.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5640
                (launcher isKindOf:ToolApplicationModel) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5641
                    showClock ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5642
                        launcher startClock
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5643
                    ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5644
                        launcher stopClock
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5645
                    ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5646
                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5647
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5648
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5649
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5650
        Inspector := currentUserPrefs inspectorClassSetting.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5651
15495
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5652
        transcriptBufferSize := Integer readFrom:transcriptBufferSize value onError:currentTranscript lineLimit.
41d4ea9d99d8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15385
diff changeset
  5653
        currentTranscript lineLimit:transcriptBufferSize.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5654
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5655
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5656
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5657
4385
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5658
"
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5659
    self toolSettings
47c861cdeb58 allow change of settings dialog delction and use new FileDialog
penk
parents: 4382
diff changeset
  5660
"
18406
b29e42efb930 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18334
diff changeset
  5661
b29e42efb930 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18334
diff changeset
  5662
    "Modified: / 09-09-1996 / 22:43:36 / stefan"
b29e42efb930 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18334
diff changeset
  5663
    "Modified: / 16-04-1998 / 17:18:47 / ca"
b29e42efb930 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18334
diff changeset
  5664
    "Created: / 13-10-1998 / 15:44:36 / cg"
b29e42efb930 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18334
diff changeset
  5665
    "Modified: / 12-11-2001 / 15:48:54 / cg"
b29e42efb930 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18334
diff changeset
  5666
    "Modified: / 21-09-2018 / 11:19:08 / Claus Gittinger"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5667
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5668
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5669
viewStyleSettings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5670
    self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5671
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5672
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5673
viewStyleSettingsFor:requestor
13143
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5674
    "open a dialog on viewStyle related settings.
ea1a7e8104c2 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13119
diff changeset
  5675
     Obsoleted by the settings application"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5676
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5677
    |resourceDir dir box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5678
     list listView scrView infoLabel infoForwarder newStyle
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5679
     someRsrcFile didApply resources listUpdater showStandardStylesOnly standardStyles|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5680
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5681
    showStandardStylesOnly := true asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5682
    standardStyles := #(
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5683
                        'decWindows'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5684
                        'iris'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5685
                        'motif'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5686
                        'mswindows95'
12059
9daa2caa5dcd class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 11990
diff changeset
  5687
                        'mswindowsXP'
9daa2caa5dcd class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 11990
diff changeset
  5688
                        'mswindowsVista'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5689
                        'next'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5690
                        'normal'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5691
                        'os2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5692
                        'st80'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5693
                       ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5694
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5695
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5696
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5697
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5698
     search resources directory for a list of .style files ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5699
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5700
    someRsrcFile := Smalltalk getSystemFileName:('resources' asFilename constructString:'normal.style').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5701
    someRsrcFile isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5702
        someRsrcFile := Smalltalk getResourceFileName:'normal.style' forPackage:'stx:libview'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5703
        someRsrcFile isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5704
            someRsrcFile := Smalltalk getResourceFileName:'styles/normal.style' forPackage:'stx:libview'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5705
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5706
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5707
    someRsrcFile notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5708
        resourceDir := someRsrcFile asFilename directoryName
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5709
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5710
        resourceDir := Smalltalk getSystemFileName:'resources'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5711
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5712
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5713
    resourceDir isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5714
        self warn:'no styles found (missing ''resources'' directory)'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5715
        ^ self
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5716
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5717
    dir := resourceDir asFilename directoryContents.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5718
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5719
    list := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5720
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5721
    listUpdater := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5722
        |listOfStyles lastSelection|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5723
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5724
        lastSelection := list selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5725
        listOfStyles := dir select:[:aFileName | aFileName asFilename hasSuffix:'style'].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5726
        listOfStyles := listOfStyles collect:[:aFileName | aFileName asFilename nameWithoutSuffix].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5727
        Filename isCaseSensitive ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5728
            listOfStyles := listOfStyles collect:[:aStyleName | aStyleName asLowercase].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5729
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5730
        listOfStyles remove:'generic' ifAbsent:nil; remove:'mswindows3' ifAbsent:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5731
        showStandardStylesOnly value ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5732
            listOfStyles := listOfStyles select:[:aStyleName | standardStyles includes:aStyleName].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5733
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5734
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5735
        listOfStyles sort.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5736
        list list:listOfStyles.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5737
        list selection:lastSelection.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5738
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5739
    listUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5740
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5741
    showStandardStylesOnly onChangeEvaluate:listUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5742
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5743
    infoForwarder := [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5744
                        |nm sheet comment|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5745
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5746
                        comment := ''.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5747
                        nm := list selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5748
                        nm notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5749
                            sheet := ViewStyle fromFile:(nm , '.style').
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5750
                            comment := (sheet at:#comment ifAbsent:'') withoutSeparators.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5751
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5752
                        comment := comment withCRs asStringCollection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5753
                        comment size == 1 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5754
                            comment := comment first
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5755
                        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5756
                        infoLabel label:comment
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5757
                       ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5758
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5759
    list onChangeEvaluate:infoForwarder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5760
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5761
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5762
    box label:(resources string:'Style Selection').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5763
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  5764
    box addTextLabel:(resources at:'STYLE_MSG' default:'Select a Style') withCRs adjust:#left.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5765
    listView := SelectionInListView on:list.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5766
    listView doubleClickAction:[:sel | box acceptChannel value:true. box hide].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5767
    box addCheckBox:(resources string:'standard styles only') on:showStandardStylesOnly.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5768
    scrView := box addComponent:(ScrollableView forView:listView) tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5769
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5770
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5771
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  5772
    infoLabel := box addTextLabel:'\\' withCRs adjust:#centerLeft.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5773
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5774
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5775
"/ mhmh - the newLauncher does not yet handle apply (without close) correctly
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5776
"/    b := box addButton:(Button label:(resources string:'apply')).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5777
"/    b action:[didApply := true. requestor changeViewStyleTo:(list selection)].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5778
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5779
    (standardStyles includes:View defaultStyle) ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5780
        showStandardStylesOnly value:false
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5781
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5782
    list selection:(View defaultStyle).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5783
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5784
    box stickAtBottomWithVariableHeight:scrView.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5785
    box stickAtBottomWithFixHeight:infoLabel.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5786
    didApply := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5787
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5788
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5789
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5790
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5791
        ((newStyle := list selection) ~= View defaultStyle
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5792
        or:[didApply ~~ true]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5793
            requestor notNil ifTrue:[requestor changeViewStyleTo:newStyle].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  5794
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5795
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5796
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5797
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5798
     self viewStyleSettingsFor:nil
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5799
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5800
7484
d8ff12aafbaa use nameWithoutSuffix
Claus Gittinger <cg@exept.de>
parents: 7455
diff changeset
  5801
    "Modified: / 07-11-2006 / 13:58:06 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5802
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5803
4914
e3888800ba3f category
Claus Gittinger <cg@exept.de>
parents: 4895
diff changeset
  5804
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs-file'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  5805
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5806
objectModuleDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5807
    "opens a moduleInfo dialog"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5808
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5809
    self objectModuleDialogReadOnly:false
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5810
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5811
    "Modified: / 19-09-2006 / 19:14:20 / cg"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5812
!
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5813
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5814
objectModuleDialogReadOnly
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5815
    "opens a moduleInfo dialog"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5816
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5817
    self objectModuleDialogReadOnly:true
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5818
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5819
    "Created: / 19-09-2006 / 19:14:27 / cg"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5820
!
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5821
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5822
objectModuleDialogReadOnly:readOnly
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5823
    "opens a moduleInfo dialog"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  5824
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5825
    |allModules moduleNames
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5826
     allObjects methodObjects methodNames
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5827
     cObjects cObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5828
     otherObjects otherObjectNames
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5829
     box l handles unloadButton unloadAndRemoveButton
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5830
     list1 list2 listView1 listView2
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5831
     y panel
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5832
     showBuiltIn showModules showMethods showCObjects showOthers
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5833
     moduleListUpdater check canDoIt menu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5834
     resources middleLabel device screenW screenH|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5835
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5836
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5837
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5838
    showBuiltIn := true asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5839
    canDoIt := ObjectFileLoader notNil and:[ObjectFileLoader canLoadObjectFiles].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5840
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  5841
    showModules := canDoIt asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5842
    showMethods := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5843
    showCObjects := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5844
    showOthers := canDoIt asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5845
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5846
    list1 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5847
    list2 := SelectionInList new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5848
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5849
    moduleListUpdater := [
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5850
            |l|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5851
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5852
            list2 list:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5853
16886
ac4a7157be95 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16756
diff changeset
  5854
            l := #().
ac4a7157be95 #REFACTORING by stefan
Stefan Vogel <sv@exept.de>
parents: 16756
diff changeset
  5855
            handles := #().
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5856
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5857
            (showModules value or:[showBuiltIn value]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5858
                allModules := ObjectMemory binaryModuleInfo asOrderedCollection.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5859
                (showBuiltIn value and:[showModules value]) ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5860
                    allModules := allModules select:[:i |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5861
                        |wantToSee|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5862
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5863
                        wantToSee := i dynamic.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5864
                        showBuiltIn value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5865
                            wantToSee := wantToSee not
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5866
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5867
                        wantToSee
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5868
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5869
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5870
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5871
                "/ sorting by reverse id brings newest ones to the top (a side effect)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5872
                allModules sort:[:a :b | (a id) > (b id)].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5873
                moduleNames := allModules collect:[:entry | entry name].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5874
                l := l , moduleNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5875
                handles := handles , allModules.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5876
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5877
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5878
            showMethods value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5879
                allObjects := ObjectFileLoader loadedObjectHandles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5880
                methodObjects := (allObjects select:[:h | h isMethodHandle]) asArray.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5881
                methodNames := methodObjects collect:[:mH | mH method isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5882
                                                                'compiled method - removed' " , ' (in ' , mH pathName , ')' "
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5883
                                                            ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5884
                                                                'compiled method ' , mH method whoString  " , ' (in ' , mH pathName , ')' "
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5885
                                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5886
                                                     ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5887
                l := l , methodNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5888
                handles := handles , methodObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5889
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5890
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5891
            showCObjects value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5892
                allObjects := ObjectFileLoader loadedObjectHandles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5893
                cObjects := (allObjects select:[:h | h isFunctionObjectHandle]) asArray.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5894
                cObjectNames := cObjects collect:[:entry | entry pathName].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5895
                l := l , cObjectNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5896
                handles := handles , cObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5897
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5898
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5899
            showOthers value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5900
                allObjects := ObjectFileLoader loadedObjectHandles.
12823
50a3b78ef6e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12756
diff changeset
  5901
                otherObjects := (allObjects reject:[:h | (h isFunctionObjectHandle
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5902
                                                         or:[h isMethodHandle
12823
50a3b78ef6e7 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12756
diff changeset
  5903
                                                         or:[h isClassLibHandle]])]) asArray.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5904
                otherObjectNames := otherObjects collect:[:entry | entry pathName].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5905
                l := l , otherObjectNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5906
                handles := handles , otherObjects.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5907
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5908
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5909
            showBuiltIn value ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5910
                l := #('VM') , l.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5911
                handles := #(VM) , handles.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5912
                allModules := #(VM) , allModules.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5913
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5914
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5915
            list1 list:l.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5916
            readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5917
                unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5918
                unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5919
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5920
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5921
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5922
    showBuiltIn onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5923
    showModules onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5924
    showMethods onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5925
    showCObjects onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5926
    showOthers onChangeEvaluate:moduleListUpdater.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5927
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5928
    box := Dialog new.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  5929
    box label:(resources string:'ST/X & Module Version Information').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5930
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5931
    listView1 := HVScrollableView for:SelectionInListView miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5932
    listView1 model:list1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5933
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  5934
    listView1 action:[:sel |
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5935
        |info classNames tabs module|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5936
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5937
        listView1 middleButtonMenu:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5938
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5939
        box withWaitCursorDo:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5940
            |nm fileName addr entry1 entry2 entry3 method l|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5941
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5942
            tabs := TabulatorSpecification unit:#inch positions:#(0 2.6 3.5).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5943
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5944
            (showModules value or:[showBuiltIn value]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5945
                info := allModules at:sel ifAbsent:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5946
            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5947
            info isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5948
                "/ selected a method, cObject or unknown
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5949
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5950
                module := handles at:sel.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5951
                fileName := module pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5952
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5953
                module isMethodHandle ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5954
                    middleLabel label:'contains method:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5955
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5956
                    (method := module method) isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5957
                        nm := '** removed **'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5958
                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5959
                        menu := PopUpMenu
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5960
                                    labels:#('Inspect' 'Browse')
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5961
                                    selectors:#(inspect browse).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5962
                        menu actionAt:#inspect put:[ method inspect ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5963
                        menu actionAt:#browse put:[ |who|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5964
                                                    who := method who.
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  5965
                                                    SystemBrowser default
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5966
                                                        openInClass:(who methodClass)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5967
                                                        selector:(who methodSelector)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5968
                                                  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5969
                        listView1 middleButtonMenu:menu.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5970
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  5971
                        nm := (method whoString) withColor:(Color blue).
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5972
                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5973
                    entry1 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5974
                    entry1 colAt:1 put:'compiled method'; colAt:2 put:nm.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5975
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5976
                    entry2 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5977
                    entry2 colAt:1 put:'path'; colAt:2 put:fileName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5978
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5979
                    entry3 := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5980
                    entry3 colAt:1 put:'address'; colAt:2 put:('(16r) ' , (method code address hexPrintString leftPaddedTo:8 with:$0)).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5981
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5982
                    list2 list:(Array with:entry1 with:entry2 with:entry3).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5983
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5984
                    (module isFunctionObjectHandle
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5985
                    and:[module functions notEmpty]) ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5986
                        middleLabel label:'contains function:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5987
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5988
                        menu := PopUpMenu
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5989
                                    labels:#('Inspect')
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5990
                                    selectors:#(inspect).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5991
                        menu actionAt:#inspect put:[ module functions inspect  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5992
                        listView1 middleButtonMenu:menu.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5993
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5994
                        list2 list:((module functions select:[:f | f notNil])
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5995
                                        collect:[:f | |entry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5996
                                                        entry := MultiColListEntry new:2 tabulatorSpecification:tabs.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  5997
                                                        entry colAt:1 put:(f name withColor:Color blue).
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5998
                                                        entry colAt:2 put:('address: (16r) ' , (f code address hexPrintString leftPaddedTo:8 with:$0)).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  5999
                                                        entry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6000
                                                ]).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6001
                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6002
                        list2 list:#('nothing known about contents (no functions have been extracted)').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6003
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6004
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6005
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6006
                readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6007
                    unloadButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6008
                    unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6009
                ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6010
            ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6011
                info == #VM ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6012
                    "/ dummy entry for VM;
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6013
                    "/ show file versions in lower view.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6014
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6015
                    middleLabel label:'contains modules:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6016
                    l := (ObjectMemory getVMIdentificationStrings).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6017
                    l := l select:[:entry | entry includesString:'$Header'].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6018
                    l := l select:[:entry | entry includesString:',v'].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6019
                    l := l collect:[:entry |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6020
                        |i1 i2 file revision date listEntry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6021
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6022
                        listEntry := MultiColListEntry new:3 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6023
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6024
                        i1 := entry indexOfSubCollection:'librun'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6025
                        i1 ~~ 0 ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6026
                            i2 := entry indexOfSubCollection:',v' startingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6027
                            i2 ~~ 0 ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6028
                                file := entry copyFrom:i1+7 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6029
                                listEntry colAt:1 put:file.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6030
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6031
                                i1 := i2+3.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6032
                                i2 := entry indexOfSeparatorStartingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6033
                                revision := entry copyFrom:i1 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6034
                                listEntry colAt:2 put:revision.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6035
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6036
                                i1 := i2+1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6037
                                i2 := entry indexOfSeparatorStartingAt:i1.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6038
                                date := entry copyFrom:i1 to:(i2-1).
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6039
                                listEntry colAt:3 put:date.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6040
                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6041
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6042
                        listEntry.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6043
                        "/ entry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6044
                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6045
                    list2 list:l.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6046
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6047
                    readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6048
                        unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6049
                        unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6050
                    ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6051
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6052
                    "/ selected a package
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6053
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6054
                    "/ fill bottom list with class-info
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6055
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6056
                    middleLabel label:'contains classes:'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6057
                    classNames := info classNames asSortedCollection.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6058
                    classNames := classNames select:[:cName |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6059
                                    |cls|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6060
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6061
                                    cls := Smalltalk classNamed:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6062
                                    cls isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6063
                                        true "a removed class"
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6064
                                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6065
                                        cls isPrivate not
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6066
                                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6067
                                  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6068
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6069
                    classNames := classNames collect:[:cName |
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6070
                                    |cls entry rev listEntry|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6071
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6072
                                    listEntry := MultiColListEntry new:2 tabulatorSpecification:tabs.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6073
                                    listEntry colAt:1 put:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6074
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6075
                                    cls := Smalltalk classNamed:cName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6076
                                    cls isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6077
                                        listEntry colAt:2 put:'(class removed)'.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6078
                                    ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6079
                                        rev := cls binaryRevision.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6080
                                        rev notNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6081
                                            cls isLoaded ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6082
                                                entry := '(stub for: ' , rev.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6083
                                            ] ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6084
                                                entry :='(bin: ' , rev.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6085
                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6086
                                            cls revision ~= rev ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6087
                                                entry := entry , ' / src: ' , (cls revision printString)
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6088
                                            ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6089
                                            listEntry colAt:2 put:entry , ')'
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6090
                                        ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6091
                                           cls revision notNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6092
                                                listEntry colAt:2 put:'(overloaded by: ' , cls revision , ')'
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6093
                                           ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6094
                                        ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6095
                                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6096
                                    listEntry
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6097
                                  ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6098
                    list2 list:classNames.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6099
                    readOnly ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6100
                        info dynamic ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6101
                            unloadButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6102
                            unloadAndRemoveButton enable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6103
                        ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6104
                            unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6105
                            unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6106
                        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6107
                    ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6108
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6109
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6110
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6111
    ].
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
    panel := HorizontalPanelView new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6115
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6116
    panel add:(l := Label label:'Show:').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6117
    l adjust:#left; borderWidth:0.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6118
    panel add:(check := CheckBox label:'Builtin' model:showBuiltIn).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6119
    box makeTabable:check.
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6120
    panel add:(check := CheckBox label:'ClassLibs' model:showModules).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6121
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6122
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6123
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6124
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6125
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6126
    panel add:(check := CheckBox label:'Methods' model:showMethods).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6127
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6128
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6129
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6130
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6131
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6132
    panel add:(check := CheckBox label:'C-objects' model:showCObjects).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6133
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6134
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6135
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6136
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6137
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6138
    panel add:(check := CheckBox label:'Others' model:showOthers).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6139
    canDoIt ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6140
        check disable
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6141
    ] ifTrue:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6142
        box makeTabable:check.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6143
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6144
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6145
    panel horizontalLayout:#fitSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6146
    "/ panel horizontalLayout:#leftSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6147
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6148
    box addComponent:panel tabable:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6149
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6150
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6151
    box addComponent:listView1 tabable:true.
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6152
    listView1 topInset:(View viewSpacing + panel preferredHeight).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6153
    listView1 origin:0.0@0.0 corner:1.0@0.4. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6154
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6155
    l := box addTextLabel:(resources string:'Contains:').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6156
    l adjust:#left; borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6157
    l origin:0.0@0.4 corner:1.0@0.4.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6158
    l topInset:(View viewSpacing).
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6159
    l bottomInset:((l preferredHeight) negated - View viewSpacing).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6160
    middleLabel := l.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6161
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6162
    listView2 := HVScrollableView for:SelectionInListView  miniScrollerH:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6163
    listView2 model:list2; printItems:false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6164
    box addComponent:listView2 tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6165
    listView2 origin:0.0@0.4 corner:1.0@1.0. "/ ; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6166
    listView2 disable.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6167
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6168
    menu := PopUpMenu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6169
                itemList:#(
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6170
                    ('Copy List'    copyList  )
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6171
                )
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6172
                resources:resources.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6173
    menu
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6174
        actionAt:#copyList
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6175
        put:[ listView2 setClipboardText:((listView2 list collect:[:l | l string]) asStringCollection asString)  ].
5440
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6176
    listView2 middleButtonMenu:menu.
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6177
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6178
    readOnly ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6179
        unloadButton := Button label:(resources string:'Unload').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6180
        unloadButton action:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6181
            box withWaitCursorDo:[
9411
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6182
                |handle idx|
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6183
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6184
                idx := list1 selectionIndex.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6185
                list1 selectionIndex:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6186
9411
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6187
                handle := handles at:idx.
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6188
                handle notNil ifTrue:[
04a4ec0fd112 When unloading an ObjectFileHandle, use ObjectFileHandle instance methods
Stefan Vogel <sv@exept.de>
parents: 9374
diff changeset
  6189
                    handle unload.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6190
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6191
                moduleListUpdater value.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6192
                unloadButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6193
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6194
        ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6195
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6196
        unloadAndRemoveButton := Button label:(resources string:'Remove Classes & Unload').
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6197
        unloadAndRemoveButton action:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6198
            box withWaitCursorDo:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6199
                |info idx pathName|
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6200
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6201
                idx := list1 selectionIndex.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6202
                info := allModules at:idx ifAbsent:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6203
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6204
                list1 selectionIndex:nil.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6205
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6206
                info isNil ifTrue:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6207
                    "/ selected a method
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6208
                    "/ idx := idx - allModules size.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6209
                    pathName := (handles at:idx) pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6210
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6211
                ] ifFalse:[
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6212
                    "/ selected a package
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6213
                    pathName := info pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6214
                ].
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6215
                ObjectFileLoader unloadObjectFileAndRemoveClasses:pathName.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6216
                moduleListUpdater value.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6217
                unloadAndRemoveButton disable.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6218
            ]
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6219
        ].
4244
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
    moduleListUpdater value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6223
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6224
    readOnly ifFalse:[
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6225
        box addButton:unloadButton.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6226
        box addButton:unloadAndRemoveButton.
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6227
    ].
5410
d44ced95df04 moduleDialog labels
Claus Gittinger <cg@exept.de>
parents: 5319
diff changeset
  6228
    box addAbortButtonLabelled:(resources string:'Dismiss').
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6229
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6230
    y := box yPosition.
8160
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6231
    listView2 topInset:(l preferredHeight + 5).
0dcbd8d60198 added preferredWidth & preferredHeight
Claus Gittinger <cg@exept.de>
parents: 8150
diff changeset
  6232
    listView2 bottomInset:(box preferredHeight - y).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6233
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6234
    device := box device.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6235
    screenW := device width.
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6236
    screenH := device height.   
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6237
    box width:(400 min:(screenW * 2 // 3));
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6238
        height:(450 min:(screenH - 50)).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6239
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6240
"/  box sizeFixed:true.
9374
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6241
    box extent:(600 min:(screenW * 2 // 3))
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6242
               @
bee80e8edccc *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 9364
diff changeset
  6243
               (500 min:(screenH - 50)) .
5440
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6244
    box openModeless.
25f9508b7df4 module dialog
Michael Beyl <mb@exept.de>
parents: 5423
diff changeset
  6245
"/    box destroy.
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6246
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6247
    self objectModuleDialog
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6248
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6249
7313
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6250
    "Modified: / 17-09-1995 / 16:47:50 / claus"
da499eef253e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7174
diff changeset
  6251
    "Created: / 19-09-2006 / 19:14:06 / cg"
17655
8c07dbb6f692 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17654
diff changeset
  6252
    "Modified: / 01-09-2017 / 14:19:47 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6253
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6254
4914
e3888800ba3f category
Claus Gittinger <cg@exept.de>
parents: 4895
diff changeset
  6255
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'dialogs-private'!
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6256
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6257
cvsConfigurationDialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6258
    |cvsRootHolder resources defaultsList bindings dialog
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6259
     listOfModules selectedPerModuleRoot rootsPerModule acceptChannel
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6260
     removeEnabled cvsExecutableHolder|
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6261
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6262
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6263
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6264
    OperatingSystem getDomainName = 'bh.exept.de' ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6265
        defaultsList := #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6266
                            'cvs.bh.exept.de:/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6267
                         ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6268
        defaultsList := defaultsList copyWith:(':pserver:' , OperatingSystem getLoginName , '@cvs.bh.exept.de:/cvs/stx')
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6269
    ] ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6270
        defaultsList := #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6271
                            ':pserver:user@CVSHOST:/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6272
                         ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6273
        defaultsList := defaultsList copyWith:(':pserver:' , OperatingSystem getLoginName , '@CVSHOST:/cvs/stx')
4510
0727a48aa72e better CVS-Root defaults
penk
parents: 4495
diff changeset
  6274
    ].
0727a48aa72e better CVS-Root defaults
penk
parents: 4495
diff changeset
  6275
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6276
    OperatingSystem isUNIXlike ifTrue:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6277
        defaultsList := defaultsList , #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6278
                          '/cvs/stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6279
                         ).
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6280
    ] ifFalse:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6281
        OperatingSystem isMSDOSlike ifTrue:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6282
            defaultsList := defaultsList , #(
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6283
                              ':local:c:\cvs\stx'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6284
                             ).
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6285
        ] ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6286
            "there might be more here in the future"
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6287
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6288
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6289
4766
723fc2feb38c new cvs defaults
Claus Gittinger <cg@exept.de>
parents: 4724
diff changeset
  6290
    cvsRootHolder := CVSSourceCodeManager repositoryName ? '/cvs/stx'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6291
    cvsRootHolder := cvsRootHolder asValue.
5944
4fef6e1d18ff Use #addAll: instead of #declareAllFrom:, since #declareAllFrom:
Stefan Vogel <sv@exept.de>
parents: 5917
diff changeset
  6292
    rootsPerModule := Dictionary new.
6995
91df148858bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6806
diff changeset
  6293
    rootsPerModule addAll:(CVSSourceCodeManager repositoryInfoPerModule).
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6294
    cvsExecutableHolder := CVSSourceCodeManager cvsExecutable asValue.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6295
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6296
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6297
    bindings at:#acceptChannel put:(acceptChannel := TriggerValue new).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6298
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6299
    bindings at:#cvsRootPrototypeList put:defaultsList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6300
    bindings at:#cvsRootHolder put:cvsRootHolder.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6301
    bindings at:#perModuleRootModule put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6302
    bindings at:#perModuleRoot put:nil asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6303
    bindings at:#removeEnabled put:(removeEnabled := false asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6304
    bindings at:#listOfModules put:(listOfModules := rootsPerModule keys asList).
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6305
    bindings at:#cvsExecutableHolder put:cvsExecutableHolder.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6306
    listOfModules sort.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6307
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6308
    bindings at:#selectedPerModuleRoot put:(selectedPerModuleRoot := nil asValue).
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6309
    selectedPerModuleRoot
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6310
             onChangeEvaluate:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6311
                            |module cvsRoot|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6312
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6313
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6314
                            module := selectedPerModuleRoot value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6315
                            removeEnabled value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6316
                            cvsRoot := rootsPerModule at:module ifAbsent:''.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6317
                            (bindings at:#perModuleRootModule) value:module.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6318
                            (bindings at:#perModuleRoot) value:cvsRoot.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6319
             ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6320
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6321
    bindings at:#help put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6322
                            WindowGroup activeGroup withWaitCursorDo:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6323
                                HTMLDocumentView openFullOnHelpFile:'Launcher/cvsSetup.html'
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6324
                            ]
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6325
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6326
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6327
    bindings at:#addPerModuleRoot put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6328
                            |module cvsRoot|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6329
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6330
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6331
                            module := (bindings at:#perModuleRootModule) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6332
                            cvsRoot := (bindings at:#perModuleRoot) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6333
                            (listOfModules includes:module) ifFalse:[
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6334
                                listOfModules add:module.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6335
                                listOfModules sort.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6336
                            ].
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  6337
                            cvsRoot notEmptyOrNil ifTrue:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6338
                                rootsPerModule at:module put:cvsRoot.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6339
                            ].
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6340
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6341
    bindings at:#removePerModuleRoot put:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6342
                            |module|
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6343
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6344
                            acceptChannel value:true.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6345
                            module := (bindings at:#perModuleRootModule) value.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6346
                            listOfModules remove:module ifAbsent:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6347
                            rootsPerModule removeKey:module ifAbsent:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6348
                            (bindings at:#perModuleRootModule) value:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6349
                            (bindings at:#perModuleRoot) value:nil.
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6350
                          ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6351
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6352
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6353
    dialog resources:resources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6354
    (dialog openSpec:(self cvsSetupSpec) withBindings:bindings) ifFalse:[
9528
259f38f5a39d Fix cvs default paths
Stefan Vogel <sv@exept.de>
parents: 9411
diff changeset
  6355
        ^ self
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6356
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6357
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6358
    acceptChannel value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6359
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6360
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6361
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6362
    "/
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6363
    CVSSourceCodeManager cvsExecutable:cvsExecutableHolder value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6364
    CVSSourceCodeManager initializeForRepository:cvsRootHolder value.
6995
91df148858bb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6806
diff changeset
  6365
    CVSSourceCodeManager repositoryInfoPerModule:rootsPerModule.
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6366
7332
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6367
    "
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6368
     self cvsConfigurationDialog
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6369
    "
4ed25898a452 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 7313
diff changeset
  6370
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  6371
    "Modified: / 17-02-2017 / 08:26:06 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6372
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6373
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6374
fontBoxForEncoding:encodingMatch
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6375
    "open a fontBox, showing fonts which match some encoding
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6376
     (used when changing to japanese ...)"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6377
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6378
    |box y b
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6379
     labelDef buttonDef listDef menuDef textDef
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6380
     models labels allOfThem filter resources defaultButton|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6381
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6382
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6383
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6384
    encodingMatch notNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6385
        filter := [:f | f encoding notNil
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6386
                        and:[encodingMatch match:f encoding]].
4244
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
    models := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6390
    labels := OrderedCollection new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6391
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6392
    models add:(allOfThem := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6393
    models add:(labelDef := Label defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6394
    models add:(buttonDef := Button defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6395
    models add:(listDef := SelectionInListView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6396
    models add:(menuDef := MenuView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6397
    models add:(textDef := TextView defaultFont asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6398
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6399
    box := Dialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6400
    box label:(resources string:'Font Settings').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6401
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6402
    models
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6403
    with:(resources array:#('All' 'Labels' 'Buttons' 'Lists' 'Menus' 'Edited Text'))
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6404
    do:[:model :title |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6405
        |y2 lbl f i|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6406
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6407
        f := model value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6408
13735
bfac4cb1f1d6 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13696
diff changeset
  6409
        box addTextLabel:title adjust:#left.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6410
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6411
        y := box yPosition.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6412
        b := box addComponent:(Button label:(resources string:'Change ...')) tabable:true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6413
        b relativeExtent:nil; extent:(b preferredExtent).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6414
        y2 := box yPosition.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6415
        box yPosition:y.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6416
        i := box leftIndent.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6417
        box leftIndent:(b widthIncludingBorder + View viewSpacing).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6418
        (lbl := box addTextLabel:'')
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6419
            adjust:#left;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6420
            font:(model value);
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6421
            labelChannel:(BlockValue
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6422
                            with:[:v | |f|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6423
                                f := v.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6424
                                f isNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6425
                                    ''
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6426
                                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6427
                                    f userFriendlyName
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6428
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6429
                            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6430
                            argument:model).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6431
        labels add:lbl.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6432
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6433
        box leftIndent:i.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6434
        box yPosition:(box yPosition max:y2).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6435
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6436
        box addVerticalSpace; addHorizontalLine; addVerticalSpace.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6437
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6438
        b action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6439
            |f|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6440
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6441
            f := FontPanel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6442
                    fontFromUserInitial:(model value)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6443
                    title:(resources string:'Font for %1' with:title)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6444
                    filter:filter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6445
                    encoding:encodingMatch.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6446
            f notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6447
                model == allOfThem ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6448
                    models do:[:m | m value:f].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6449
                    labels do:[:l | l font:f]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6450
                ] ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6451
                    model value:f.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6452
                    lbl font:f.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6453
                ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6454
            ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6455
        ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6456
        model == allOfThem ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6457
            box addVerticalSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6458
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6459
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6460
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6461
    box addAbortAndOkButtons.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6462
    defaultButton := Button label:(resources string:'Defaults').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6463
13401
0dbda3c5121c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13241
diff changeset
  6464
    box addButton:defaultButton.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6465
    defaultButton
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6466
        action:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6467
            "/ fetch defaults
5449
8947b587b1f7 readStyleSheetAndUpdateAllStyleCaches not for every read settings
penk
parents: 5440
diff changeset
  6468
"/            View readStyleSheetAndUpdateAllStyleCaches.
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6469
            labelDef value: Label defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6470
            buttonDef value: Button defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6471
            listDef value: SelectionInListView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6472
            menuDef value: MenuView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6473
            textDef value: TextView defaultFont.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6474
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6475
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6476
    box open.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6477
    box accepted ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6478
        Label defaultFont:labelDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6479
        Button defaultFont:buttonDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6480
        Toggle defaultFont:buttonDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6481
        TextView withAllSubclasses do:[:cls | cls defaultFont:textDef value].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6482
        SelectionInListView withAllSubclasses do:[:cls | cls defaultFont:listDef value].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6483
        MenuView defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6484
        MenuPanel defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6485
        NoteBookView defaultFont:menuDef value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6486
        PullDownMenu defaultFont:menuDef value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6487
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6488
    box destroy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6489
    ^ box accepted
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6490
7726
3622371456d4 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 7679
diff changeset
  6491
    "Created: / 27-02-1996 / 01:44:16 / cg"
3622371456d4 BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 7679
diff changeset
  6492
    "Modified: / 17-06-1996 / 13:38:48 / stefan"
13401
0dbda3c5121c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 13241
diff changeset
  6493
    "Modified: / 29-08-2013 / 12:20:48 / cg"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6494
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6495
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6496
formattingConfigurationDialog
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6497
    |dialog
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6498
     resources exampleText formattedText reformatAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6499
     reformatLocked
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6500
     oldUserPreferences
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6501
     currentUserPrefs
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6502
     tabIndent
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6503
     spaceAroundTemporaries emptyLineAfterTemporaries
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6504
     spaceAfterReturnToken spaceAfterKeywordSelector cStyleBlocks
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6505
     blockArgumentsOnNewLine
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6506
     maxLengthForSingleLineBlocks resetValue bindings|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6507
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6508
    RBFormatter isNil ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6509
        ^ self warn:'Sorry, no RBFormatter class'.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6510
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6511
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6512
    RBFormatter isLoaded ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6513
        WindowGroup activeGroup withWaitCursorDo:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6514
            RBFormatter autoload
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6515
        ]
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6516
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6517
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6518
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6519
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6520
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6521
    exampleText :=
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6522
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6523
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6524
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6525
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6526
    |index|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6527
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6528
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6529
    self at:index.                      "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6530
    self at:index put:methodArg.        "/ a two arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6531
    self from:1 to:index put:methodArg. "/ a three arg message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6532
    methodArg ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6533
        Transcript showCR:''hello''.      "/ condition
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6534
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6535
    methodArg ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6536
        Transcript showCR:''hello''.      "/ condition
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6537
    ] ifFalse:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6538
        Transcript showCR:''world''.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6539
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6540
    [methodArg] whileTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6541
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6542
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6543
    [self aVeryLongConditionBlock and:[self toMakeBlockLonger]] whileTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6544
        Transcript showCR:''hello''.      "/ long blocks
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6545
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6546
    methodArg do:[:element |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6547
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6548
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6549
    1 to:methodArg size do:[:index |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6550
        Transcript showCR:''hello''.      "/ looping
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6551
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6552
    methodArg keysAndValuesDo:[:index |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6553
        Transcript showCR:''hello''.      "/ looping
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6554
    ].
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6555
    Object errorSignal handle:[:ex |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6556
        ex return
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6557
    ] do:[                                "/ exception handling
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6558
        self someAction                   "/ blocks
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6559
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6560
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6561
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6562
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6563
    formattedText := '' asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6564
    reformatLocked := false.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6565
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6566
    reformatAction := [ |tree
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6567
                         s_tabIndent s_spaceAroundTemporaries s_emptyLineAfterTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6568
                         s_spaceAfterReturnToken s_spaceAfterKeywordSelector s_cStyleBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6569
                         s_maxLengthForSingleLineBlocks s_blockArgumentsOnNewLine|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6570
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6571
                        reformatLocked ifFalse:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6572
                            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6573
                            "/ temporary change the RBFormatters settings ...
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6574
                            "/
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6575
                            s_tabIndent := RBFormatter tabIndent.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6576
                            s_spaceAroundTemporaries := RBFormatter spaceAroundTemporaries.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6577
                            s_emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6578
                            s_spaceAfterReturnToken := RBFormatter spaceAfterReturnToken.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6579
                            s_spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6580
                            s_cStyleBlocks := RBFormatter cStyleBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6581
                            s_blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6582
                            s_maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6583
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6584
                            RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6585
                                tabIndent:tabIndent value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6586
                                spaceAroundTemporaries:spaceAroundTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6587
                                emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6588
                                spaceAfterReturnToken:spaceAfterReturnToken value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6589
                                spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6590
                                cStyleBlocks:cStyleBlocks value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6591
                                blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6592
                                maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6593
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6594
                            tree := RBParser
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6595
                                        parseMethod:exampleText
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6596
                                        onError: [:aString :position | nil].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6597
                            tree do:[:node |
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6598
                                (node ~~ tree and:[node parent isNil]) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6599
                                    self error:'No parent for node'.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6600
                                ]
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6601
                            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6602
                            formattedText value:tree printString.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6603
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6604
                            RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6605
                                tabIndent:s_tabIndent;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6606
                                spaceAroundTemporaries:s_spaceAroundTemporaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6607
                                emptyLineAfterTemporaries:s_emptyLineAfterTemporaries;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6608
                                spaceAfterReturnToken:s_spaceAfterReturnToken;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6609
                                spaceAfterKeywordSelector:s_spaceAfterKeywordSelector;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6610
                                cStyleBlocks:s_cStyleBlocks;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6611
                                blockArgumentsOnNewLine:s_blockArgumentsOnNewLine;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6612
                                maxLengthForSingleLineBlocks:s_maxLengthForSingleLineBlocks.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6613
                          ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6614
                      ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6615
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6616
    bindings := IdentityDictionary new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6617
    bindings at:#formattedText put:formattedText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6618
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6619
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6620
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6621
    tabIndent := RBFormatter tabIndent asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6622
    tabIndent onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6623
    bindings at:#tabIndent put:tabIndent.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6624
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6625
    spaceAroundTemporaries := RBFormatter spaceAroundTemporaries asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6626
    spaceAroundTemporaries onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6627
    bindings at:#spaceAroundTemporaries put:spaceAroundTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6628
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6629
    emptyLineAfterTemporaries := RBFormatter emptyLineAfterTemporaries asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6630
    emptyLineAfterTemporaries onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6631
    bindings at:#emptyLineAfterTemporaries put:emptyLineAfterTemporaries.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6632
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6633
    spaceAfterReturnToken := RBFormatter spaceAfterReturnToken asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6634
    spaceAfterReturnToken onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6635
    bindings at:#spaceAfterReturnToken put:spaceAfterReturnToken.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6636
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6637
    spaceAfterKeywordSelector := RBFormatter spaceAfterKeywordSelector asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6638
    spaceAfterKeywordSelector onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6639
    bindings at:#spaceAfterKeywordSelector put:spaceAfterKeywordSelector.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6640
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6641
    cStyleBlocks := RBFormatter cStyleBlocks asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6642
    cStyleBlocks onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6643
    bindings at:#cStyleBlocks put:cStyleBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6644
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6645
    blockArgumentsOnNewLine := RBFormatter blockArgumentsOnNewLine asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6646
    blockArgumentsOnNewLine onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6647
    bindings at:#blockArgumentsOnNewLine put:blockArgumentsOnNewLine.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6648
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6649
    maxLengthForSingleLineBlocks := RBFormatter maxLengthForSingleLineBlocks asValue.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6650
    maxLengthForSingleLineBlocks onChangeEvaluate:reformatAction.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6651
    bindings at:#maxLengthForSingleLineBlocks put:maxLengthForSingleLineBlocks.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6652
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6653
    bindings at:#resetList   put:#( 'ST/X default' 'RB default' ).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6654
    bindings at:#resetValue  put:(resetValue := nil asValue).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6655
    resetValue onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6656
        [
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6657
            resetValue value == 1 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6658
                "/ ST/X defaults
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6659
                reformatLocked := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6660
                tabIndent value: 4.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6661
                spaceAfterReturnToken value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6662
                spaceAfterKeywordSelector value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6663
                spaceAroundTemporaries value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6664
                emptyLineAfterTemporaries value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6665
                cStyleBlocks value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6666
                blockArgumentsOnNewLine value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6667
                maxLengthForSingleLineBlocks value: 20.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6668
                reformatLocked := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6669
                reformatAction value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6670
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6671
            resetValue value == 2 ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6672
                "/ RBParser defaults
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6673
                reformatLocked := true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6674
                tabIndent value: 8.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6675
                spaceAfterReturnToken value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6676
                spaceAfterKeywordSelector value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6677
                spaceAroundTemporaries value: true.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6678
                emptyLineAfterTemporaries value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6679
                cStyleBlocks value: false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6680
                blockArgumentsOnNewLine value:false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6681
                maxLengthForSingleLineBlocks value: 20.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6682
                reformatLocked := false.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6683
                reformatAction value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6684
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6685
            resetValue value:nil. "/ to force default label
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6686
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6687
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6688
    reformatAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6689
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6690
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6691
    "/ create a box on those ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6692
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6693
    dialog := SimpleDialog new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6694
    dialog postBuildBlock:[:builder |
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6695
                                (builder componentAt:#sampleTextView)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6696
                                    cursorMovementWhenUpdating:nil;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6697
                                    scrollWhenUpdating:nil.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6698
                          ].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6699
    (dialog openFor:nil
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6700
        spec:(self formatterDialogSpec)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6701
        withBindings:bindings)
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6702
    ifTrue:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6703
        currentUserPrefs at:#'formatter.tabIndent' put:tabIndent value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6704
        currentUserPrefs at:#'formatter.spaceAroundTemporaries' put:spaceAroundTemporaries value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6705
        currentUserPrefs at:#'formatter.emptyLineAfterTemporaries' put:emptyLineAfterTemporaries value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6706
        currentUserPrefs at:#'formatter.spaceAfterReturnToken' put:spaceAfterReturnToken value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6707
        currentUserPrefs at:#'formatter.spaceAfterKeywordSelector' put:spaceAfterKeywordSelector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6708
        currentUserPrefs at:#'formatter.cStyleBlocks' put:cStyleBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6709
        currentUserPrefs at:#'formatter.blockArgumentsOnNewLine' put:blockArgumentsOnNewLine value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6710
        currentUserPrefs at:#'formatter.maxLengthForSingleLineBlocks' put:maxLengthForSingleLineBlocks value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6711
        RBFormatter
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6712
            tabIndent:tabIndent value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6713
            spaceAroundTemporaries:spaceAroundTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6714
            emptyLineAfterTemporaries:emptyLineAfterTemporaries value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6715
            spaceAfterReturnToken:spaceAfterReturnToken value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6716
            spaceAfterKeywordSelector:spaceAfterKeywordSelector value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6717
            cStyleBlocks:cStyleBlocks value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6718
            blockArgumentsOnNewLine:blockArgumentsOnNewLine value;
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6719
            maxLengthForSingleLineBlocks:maxLengthForSingleLineBlocks value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6720
    ] ifFalse: [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6721
        (UserPreferences reset; current) addAll: oldUserPreferences
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6722
    ].
4398
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6723
"
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6724
    self formattingConfigurationDialog
4f1963d9b80e add change and remove some settings applications
penk
parents: 4386
diff changeset
  6725
"
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6726
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6727
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6728
syntaxColorConfigurationDialog
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6729
    |box frame exampleView y
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6730
     resources exampleText coloredText recolorAction
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6731
     syntaxColor syntaxColors colorMenu oldUserPreferences
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6732
     syntaxEmphasises syntaxColorSelector syntaxEmphasisSelector syntaxColoringBox
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6733
     syntaxEmphasisesBox syntaxColoringResetButton b resetList
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6734
     resetListBox currentUserPrefs|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6735
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6736
    resources := self owningClass classResources.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6737
    currentUserPrefs := UserPreferences current.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6738
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6739
    exampleText :=
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6740
'methodSelector:methodArg
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6741
    "method comment:
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6742
     some stupid code to show the current settings"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6743
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6744
    |methodVar|
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6745
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6746
    "/ another comment ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6747
    self at:methodArg.        "/ a message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6748
    self fooBarBaz:methodVar. "/ a bad message
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6749
    methodVar := Array new:1.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6750
    unknonVar := 1.           "/ a bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6751
    UnknonVar := 1.           "/ another bad variable
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6752
    "self bar:methodVar.  detect commented code easily"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6753
    1 to:5 do:[:i | self at:i + 1].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6754
    Transcript showCR:''some string'' , #someSymbol.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6755
    ^ self.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6756
'.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6757
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6758
    coloredText := '' asValue.
12928
a59e4bd2adcc Do not use obsolete methods
Stefan Vogel <sv@exept.de>
parents: 12842
diff changeset
  6759
    recolorAction := [ coloredText value:(SyntaxHighlighter formatMethodSource:exampleText in:nil) ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6760
    recolorAction value.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6761
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6762
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6763
    "/ create a box on those values ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6764
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6765
    box := DialogBox new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6766
    box label:(resources string:'Syntax Colors').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6767
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6768
    frame := View new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6769
    frame extent:1.0 @ 200.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6770
    frame borderWidth:0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6771
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6772
    exampleView := HVScrollableView for:TextView in:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6773
    exampleView model:coloredText.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6774
    exampleView origin:0.0@0.0 corner:1.0@1.0; inset:2.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6775
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6776
    frame topInset:box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6777
    box addComponent:frame withExtent:1.0@200.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6778
    box makeTabable:exampleView.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6779
    frame width:1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6780
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6781
    box addVerticalSpace.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6782
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6783
    oldUserPreferences := currentUserPrefs copy.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6784
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6785
    syntaxColoringBox := box addComboListOn: (syntaxColors := SelectionInList with:UserPreferences syntaxColorNames initialSelection:1).
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6786
    syntaxColorSelector    := [(syntaxColors selection replChar:$  withString: '') asLowercaseFirst asSymbol].
14086
f05ca0ec3ea8 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 14075
diff changeset
  6787
    syntaxEmphasisSelector := [((syntaxColorSelector value upToAll: 'Color'), 'Emphasis') asLowercaseFirst asSymbol].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6788
    syntaxColor := (currentUserPrefs perform: syntaxColorSelector value) asValue.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6789
    colorMenu := ColorMenu new.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6790
    colorMenu model: syntaxColor.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6791
    syntaxColor onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6792
        [currentUserPrefs at:  syntaxColorSelector value put: syntaxColor value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6793
         recolorAction value.].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6794
    syntaxColors onChangeEvaluate:
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6795
        [|eVal|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6796
         syntaxColor value: (currentUserPrefs perform:syntaxColorSelector value).
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6797
         eVal := currentUserPrefs perform: syntaxEmphasisSelector value.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6798
         eVal isArray ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6799
            eVal = (Array with:#underwave with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6800
                eVal := #'red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6801
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6802
            eVal = (Array with:#bold with:#underwave with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6803
                eVal := #'bold+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6804
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6805
            eVal = (Array with:#bold with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6806
                eVal := #'bold+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6807
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6808
            eVal = (Array with:#italic with:#underwave with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6809
                eVal := #'italic+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6810
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6811
            eVal = (Array with:#italic with:#underlineColor->(Color red:100.0 green:0.0 blue:0.0)) ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6812
                eVal := #'italic+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6813
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6814
         ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6815
         syntaxEmphasises selection: eVal.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6816
         recolorAction value.].
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6817
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6818
    syntaxEmphasises := SelectionInList
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6819
                            with:#(
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6820
                                    normal
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6821
                                    underline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6822
                                    #'red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6823
                                    underwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6824
                                    #'red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6825
                                    bold
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6826
                                    boldUnderline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6827
                                    #'bold+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6828
                                    boldUnderwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6829
                                    #'bold+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6830
                                    italic
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6831
                                    italicUnderline
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6832
                                    #'italic+red underline'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6833
                                    italicUnderwave
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6834
                                    #'italic+red underwave'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6835
                                    reverse
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6836
                                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6837
                            initialSelection:1.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6838
    syntaxEmphasisesBox := box addComboListOn:syntaxEmphasises.
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6839
    syntaxEmphasises
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6840
        onChangeEvaluate:[ |em|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6841
            em := syntaxEmphasises selection.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6842
            em notNil ifTrue:[
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6843
                em := em asSymbol.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6844
                em == #'red underline' ifTrue:[ em := Array with:#underline with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6845
                em == #'red underwave' ifTrue:[ em := Array with:#underwave with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6846
                em == #'bold+red underline' ifTrue:[ em := Array with:#bold with:#underline with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6847
                em == #'bold+red underwave' ifTrue:[ em := Array with:#bold with:#underwave with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6848
                em == #'italic+red underline' ifTrue:[ em := Array with:#italic with:#underline with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6849
                em == #'italic+red underwave' ifTrue:[ em := Array with:#italic with:#underwave with:(#underlineColor->Color red)].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6850
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6851
                currentUserPrefs at: syntaxEmphasisSelector value put:em.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6852
            ].
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6853
            recolorAction value
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6854
        ].
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6855
    syntaxColors changed:#value. "/ to force initial update of emphasis
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6856
    box addComponent:colorMenu tabable:true.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6857
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6858
    y := box yPosition.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6859
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6860
    b := Button new label: (resources string:'reset to:').
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6861
    b action:[
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6862
        |resetSelector|
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6863
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6864
        resetSelector := (currentUserPrefs listOfPredefinedSyntaxColoringSchemes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6865
                             collect:[:eachEntry | eachEntry first])
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6866
                                 at:resetList selectionIndex.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6867
        currentUserPrefs perform:resetSelector.
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6868
        recolorAction value.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6869
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6870
    syntaxColoringResetButton := box addComponent:b.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6871
    box makeTabable:syntaxColoringResetButton.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6872
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6873
    box yPosition:y.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6874
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6875
    resetList := SelectionInList
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6876
                            with:(currentUserPrefs listOfPredefinedSyntaxColoringSchemes
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6877
                                        collect:[:eachEntry | eachEntry second])
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6878
                            initialSelection:1.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6879
    resetListBox := box addComboListOn:resetList.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6880
    box makeTabable:resetListBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6881
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6882
    syntaxColoringBox enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6883
    colorMenu enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6884
    syntaxEmphasisesBox enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6885
    syntaxColoringResetButton enable.
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6886
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6887
    box
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6888
"/        addHelpButtonFor:'Launcher/sourceSettings.html';
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6889
        addAbortAndOkButtons.
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6890
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6891
    box stickAtBottomWithVariableHeight:frame.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6892
    box stickAtBottomWithFixHeight:syntaxColoringBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6893
    box stickAtBottomWithFixHeight:syntaxEmphasisesBox.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6894
    box stickAtBottomWithFixHeight:colorMenu.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6895
    box stickAtBottomWithFixHeight:syntaxColoringResetButton left:0.0 right:0.5.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6896
    box stickAtBottomWithFixHeight:resetListBox left:0.5 right:1.0.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6897
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6898
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6899
    "/ show the box ...
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6900
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6901
    box extent:600@400.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6902
    box openModal.
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6903
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6904
    "/
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6905
    "/ update system settings
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6906
    "/
5944
4fef6e1d18ff Use #addAll: instead of #declareAllFrom:, since #declareAllFrom:
Stefan Vogel <sv@exept.de>
parents: 5917
diff changeset
  6907
    box accepted ifFalse: [
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6908
        (UserPreferences reset; current) addAll:oldUserPreferences
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6909
    ].
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6910
    box destroy
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6911
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6912
    "Modified: / 16.4.1998 / 17:18:16 / ca"
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6913
    "Modified: / 7.7.1999 / 00:27:02 / cg"
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6914
! !
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  6915
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6916
!AbstractLauncherApplication::LauncherDialogs class methodsFor:'interface specs'!
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  6917
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6918
cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6919
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6920
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6921
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6922
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6923
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6924
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6925
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6926
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#cvsSetupSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6927
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6928
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6929
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  6930
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  6931
    ^
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6932
     #(FullSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6933
        name: cvsSetupSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6934
        window:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6935
       (WindowSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6936
          label: 'CVS Setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6937
          name: 'CVS Setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6938
          min: (Point 436 316)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6939
          bounds: (Rectangle 14 46 450 400)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6940
        )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6941
        component:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  6942
       (SpecCollection
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6943
          collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6944
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6945
              label: 'CVS BinDirectory:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6946
              name: 'Label1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6947
              layout: (LayoutFrame 0 0.0 36 0 40 0.25 53 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6948
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6949
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6950
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6951
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6952
           (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6953
              name: 'BinDirectoryField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6954
              layout: (LayoutFrame 44 0.25 34 0 -1 1 56 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6955
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6956
              model: cvsBinDirectoryHolder
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6957
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6958
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6959
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6960
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6961
              name: 'Separator3'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6962
              layout: (LayoutFrame 0 0.0 60 0 0 1.0 64 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6963
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6964
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6965
              label: 'CVS SourceCodeManager setup'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6966
              name: 'label'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6967
              layout: (LayoutFrame 1 0.0 3 0 -1 1.0 20 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6968
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6969
              adjust: left
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6970
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6971
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6972
              label: 'CVSRoot default:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6973
              name: 'defaultCvsRootLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6974
              layout: (LayoutFrame 0 0.0 71 0 40 0.25 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6975
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6976
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6977
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6978
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6979
           (ComboBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6980
              name: 'cvsRootComboBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6981
              layout: (LayoutFrame 44 0.25 71 0 -1 1.0 93 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6982
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6983
              model: cvsRootHolder
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6984
              immediateAccept: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6985
              acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6986
              acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6987
              acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6988
              acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6989
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6990
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6991
              comboList: cvsRootPrototypeList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6992
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6993
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6994
              name: 'Separator1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6995
              layout: (LayoutFrame 0 0.0 96 0 0 1.0 100 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6996
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6997
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6998
              label: 'CVSRoot per Module:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  6999
              name: 'knownModulesLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7000
              layout: (LayoutFrame 0 0.0 109 0 40 0.25 126 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7001
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7002
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7003
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7004
           (SequenceViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7005
              name: 'List1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7006
              layout: (LayoutFrame 44 0.25 104 0 -1 1 202 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7007
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7008
              model: selectedPerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7009
              hasHorizontalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7010
              hasVerticalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7011
              miniScrollerHorizontal: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7012
              useIndex: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7013
              sequenceList: listOfModules
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7014
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7015
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7016
              label: 'Module:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7017
              name: 'moduleLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7018
              layout: (LayoutFrame 0 0.0 209 0 40 0.25 226 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7019
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7020
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7021
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7022
           (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7023
              name: 'perModuleRootModuleEntryField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7024
              layout: (LayoutFrame 44 0.25 205 0 -1 1 227 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7025
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7026
              model: perModuleRootModule
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7027
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7028
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7029
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7030
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7031
              label: 'CVSRoot:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7032
              name: 'cvsRootLabel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7033
              layout: (LayoutFrame 0 0.0 236 0 40 0.25 253 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7034
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7035
              adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7036
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7037
           (ComboBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7038
              name: 'perModuleRootComboBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7039
              layout: (LayoutFrame 44 0.25 232 0 -1 1.0 254 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7040
              tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7041
              model: perModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7042
              immediateAccept: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7043
              acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7044
              acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7045
              acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7046
              acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7047
              acceptChannel: acceptChannel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7048
              acceptOnPointerLeave: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7049
              comboList: cvsRootPrototypeList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7050
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7051
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7052
              name: 'HorizontalPanel1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7053
              layout: (LayoutFrame 44 0.25 258 0 -1 1 289 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7054
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7055
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7056
              horizontalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7057
              verticalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7058
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7059
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7060
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7061
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7062
                    label: 'Add/Apply'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7063
                    name: 'addButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7064
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7065
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7066
                    model: addPerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7067
                    extent: (Point 136 22)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7068
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7069
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7070
                    label: 'Remove'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7071
                    name: 'removeButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7072
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7073
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7074
                    model: removePerModuleRoot
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7075
                    enableChannel: removeEnabled
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7076
                    extent: (Point 137 22)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7077
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7078
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7079
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7080
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7081
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7082
           (DividerSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7083
              name: 'Separator2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7084
              layout: (LayoutFrame 0 0.0 -45 1 0 1.0 -34 1)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7085
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7086
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7087
              name: 'buttonPanel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7088
              layout: (LayoutFrame 0 0.0 -29 1.0 0 1.0 -3 1.0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7089
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7090
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7091
              horizontalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7092
              verticalSpace: 3
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7093
              ignoreInvisibleComponents: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7094
              reverseOrderIfOKAtLeft: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7095
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7096
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7097
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7098
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7099
                    label: 'Cancel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7100
                    name: 'cancelButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7101
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7102
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7103
                    model: cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7104
                    extent: (Point 141 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7105
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7106
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7107
                    label: 'Help'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7108
                    name: 'helpButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7109
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7110
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7111
                    model: help
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7112
                    extent: (Point 141 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7113
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7114
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7115
                    label: 'OK'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7116
                    name: 'okButton'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7117
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7118
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7119
                    model: accept
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7120
                    isDefault: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7121
                    extent: (Point 142 21)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7122
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7123
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7124
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7125
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7126
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7127
           )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7128
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7129
        )
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7130
      )
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7131
!
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7132
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7133
formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7134
    "This resource specification was automatically generated
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7135
     by the UIPainter of ST/X."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7136
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7137
    "Do not manually edit this!! If it is corrupted,
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7138
     the UIPainter may not be able to read the specification."
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7139
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7140
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7141
     UIPainter new openOnClass:AbstractLauncherApplication::LauncherDialogs andSelector:#formatterDialogSpec
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7142
    "
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7143
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7144
    <resource: #canvas>
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7145
9303
34760bcd61c4 *** empty log message ***
fm
parents: 9188
diff changeset
  7146
    ^
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  7147
     #(FullSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7148
        name: formatterDialogSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7149
        window:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  7150
       (WindowSpec
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7151
          label: 'Formatting parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7152
          name: 'Formatting parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7153
          min: (Point 10 10)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7154
          bounds: (Rectangle 14 46 610 629)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7155
        )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7156
        component:
5153
0030b86728bf Delete #max: (- windowsize) in windowSpecs
Stefan Vogel <sv@exept.de>
parents: 5146
diff changeset
  7157
       (SpecCollection
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7158
          collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7159
           (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7160
              label: 'Sample output:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7161
              name: 'Label2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7162
              layout: (LayoutFrame 0 0.0 4 0 0 1.0 26 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7163
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7164
              adjust: left
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7165
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7166
           (TextEditorSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7167
              name: 'sampleTextView'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7168
              layout: (LayoutFrame 0 0.0 30 0.0 0 1.0 -234 1.0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7169
              level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7170
              model: formattedText
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7171
              hasHorizontalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7172
              hasVerticalScrollBar: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7173
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7174
           (FramedBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7175
              label: 'Parameters'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7176
              name: 'FramedBox1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7177
              layout: (LayoutFrame 0 0.0 -225 1 0 1.0 -30 1)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7178
              labelPosition: topLeft
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7179
              translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7180
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7181
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7182
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7183
                 (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7184
                    label: 'Max length for single line blocks:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7185
                    name: 'Label1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7186
                    layout: (LayoutFrame 185 0.0 127 0 66 0.7 153 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7187
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7188
                    adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7189
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7190
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7191
                    label: 'Space around temporaries '
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7192
                    name: 'checkBox'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7193
                    layout: (LayoutFrame 2 0 3 0 260 0 32 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7194
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7195
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7196
                    model: spaceAroundTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7197
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7198
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7199
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7200
                    label: 'Blank line after local var declaration'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7201
                    name: 'CheckBox1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7202
                    layout: (LayoutFrame 267 0 3 0 567 0 32 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7203
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7204
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7205
                    model: emptyLineAfterTemporaries
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7206
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7207
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7208
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7209
                    label: 'Space after ''^'''
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7210
                    name: 'CheckBox2'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7211
                    layout: (LayoutFrame 2 0 31 0 260 0 60 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7212
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7213
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7214
                    model: spaceAfterReturnToken
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7215
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7216
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7217
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7218
                    label: 'Space after '':'' in keywords'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7219
                    name: 'CheckBox3'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7220
                    layout: (LayoutFrame 267 0 31 0 567 0 60 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7221
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7222
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7223
                    model: spaceAfterKeywordSelector
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7224
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7225
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7226
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7227
                    label: 'C-Style blocks'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7228
                    name: 'CheckBox4'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7229
                    layout: (LayoutFrame 2 0 59 0 260 0 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7230
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7231
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7232
                    model: cStyleBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7233
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7234
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7235
                 (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7236
                    name: 'editField'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7237
                    layout: (LayoutFrame 74 0.7 93 0 -38 1.0 119 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7238
                    level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7239
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7240
                    model: tabIndent
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7241
                    type: number
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7242
                    immediateAccept: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7243
                    acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7244
                    acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7245
                    acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7246
                    acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7247
                    acceptOnPointerLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7248
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7249
                 (LabelSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7250
                    label: 'Indent:'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7251
                    name: 'label'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7252
                    layout: (LayoutFrame 242 0.0 93 0 66 0.7 119 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7253
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7254
                    adjust: right
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7255
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7256
                 (InputFieldSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7257
                    name: 'EntryField1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7258
                    layout: (LayoutFrame 74 0.7 127 0 -38 1.0 153 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7259
                    level: -1
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7260
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7261
                    model: maxLengthForSingleLineBlocks
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7262
                    type: number
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7263
                    immediateAccept: false
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7264
                    acceptOnLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7265
                    acceptOnReturn: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7266
                    acceptOnTab: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7267
                    acceptOnLostFocus: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7268
                    acceptOnPointerLeave: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7269
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7270
                 (PopUpListSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7271
                    label: 'Reset to...'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7272
                    name: 'PopUpList1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7273
                    layout: (LayoutFrame 2 0 129 0 127 0 151 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7274
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7275
                    model: resetValue
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7276
                    menu: resetList
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7277
                    useIndex: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7278
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7279
                 (CheckBoxSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7280
                    label: 'Block args on new line'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7281
                    name: 'CheckBox5'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7282
                    layout: (LayoutFrame 267 0 59 0 567 0 88 0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7283
                    level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7284
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7285
                    model: blockArgumentsOnNewLine
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7286
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7287
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7288
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7289
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7290
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7291
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7292
           (HorizontalPanelViewSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7293
              name: 'horizontalPanelView'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7294
              layout: (LayoutFrame 0 0.0 -35 1.0 0 1.0 0 1.0)
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7295
              level: 0
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7296
              horizontalLayout: fitSpace
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7297
              verticalLayout: center
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7298
              horizontalSpace: 4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7299
              verticalSpace: 4
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7300
              ignoreInvisibleComponents: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7301
              component:
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7302
             (SpecCollection
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7303
                collection: (
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7304
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7305
                    label: 'Cancel'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7306
                    name: 'button'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7307
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7308
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7309
                    model: cancel
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7310
                    useDefaultExtent: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7311
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7312
                 (ActionButtonSpec
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7313
                    label: 'OK'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7314
                    name: 'Button1'
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7315
                    translateLabel: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7316
                    tabable: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7317
                    model: accept
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7318
                    isDefault: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7319
                    useDefaultExtent: true
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7320
                  )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7321
                 )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7322
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7323
              )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7324
            )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7325
           )
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7326
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  7327
        )
4244
64dcb0a42673 *** empty log message ***
penk
parents: 4243
diff changeset
  7328
      )
2596
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  7329
! !
a2c3d90290ba formatter setup added;
Claus Gittinger <cg@exept.de>
parents: 2584
diff changeset
  7330
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7331
!AbstractLauncherApplication::PackageLoadDialog class methodsFor:'documentation'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7332
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7333
documentation
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7334
"
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7335
    handwritten q&d dialog to load packages.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7336
    TODO:
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7337
        rewrite using UI builder
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7338
"
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7339
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7340
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7341
!AbstractLauncherApplication::PackageLoadDialog class methodsFor:'opening'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7342
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7343
open
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7344
    self new openLoadPackageDialog
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7345
!
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7346
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7347
openModal
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7348
    self new openLoadPackageDialogModal:true
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7349
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7350
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7351
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'initialize & release'!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7352
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7353
initializeIcons
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7354
    folderIcon := ToolbarIconLibrary directoryOpen18x18Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7355
    "/ folderHalfGreyIcon := ToolbarIconLibrary directoryOpenHalfGrey18x18Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7356
    packageIcon := ToolbarIconLibrary packageOpen24x24Icon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7357
    applicationIcon := ToolbarIconLibrary makeYellow22x22Icon1.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7358
    greyFolderIcon := folderIcon asGrayImageDepth:8.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7359
    greyPackageIcon := packageIcon asGrayImageDepth:8.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7360
    greyApplicationIcon := applicationIcon asGrayImageDepth:(applicationIcon depth min:8).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7361
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7362
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7363
release
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7364
    |p|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7365
    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7366
    (p := backgroundPackageFindProcess) notNil ifTrue:[
16894
a6e7b6cd2db0 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16888
diff changeset
  7367
        backgroundPackageFindProcess := nil.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7368
        p isDead ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7369
            p terminate
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7370
        ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7371
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7372
    super release
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7373
! !
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7374
17083
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7375
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'menu'!
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7376
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7377
itemMenu
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7378
    |item m itemType package defClass|
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7379
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7380
    hierarchicalListView selectionValue notEmptyOrNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7381
        item := hierarchicalListView selectionValue first.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7382
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7383
        itemType := item type.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7384
        ( 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7385
            #( #localRoot #monticelloRoot #compiledPackagesRoot ) includes:itemType
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7386
        ) ifFalse:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7387
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7388
            package := packageIdByItem at:item ifAbsent:nil.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7389
            package notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7390
                defClass := package asPackageId projectDefinitionClass.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7391
            ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7392
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7393
            m := Menu new.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7394
            m addItem:(MenuItem 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7395
                        label: (resources string:'Load')
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7396
                        itemValue: 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7397
                            [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7398
                                package notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7399
                                    self loadPackageAndUpdate:package browse:false subPackages:false item:item.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7400
                                    "/ loadPackageAndUpdate value:package value:false value:item.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7401
                                ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7402
                            ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7403
                        enabled:package notNil).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7404
            m addItem:(MenuItem 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7405
                        label: (resources string:'Load with All Subpackages')
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7406
                        itemValue: 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7407
                            [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7408
                                package notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7409
                                    self loadPackageAndUpdate:package browse:false subPackages:true item:item.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7410
                                    "/ loadPackageAndUpdate value:package value:false value:item.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7411
                                ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7412
                            ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7413
                        enabled:package notNil).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7414
            m addItem:(MenuItem 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7415
                        label: (resources string:'Load PackageDefinition Only')
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7416
                        itemValue: 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7417
                            [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7418
                                package notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7419
                                    self loadPackageDefinition:package browse:false subPackages:false item:item.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7420
                                ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7421
                            ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7422
                        enabled:package notNil).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7423
            m addSeparator. 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7424
            m addItem:(MenuItem 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7425
                        label: (resources string:'Open File Browser on Package''s Folder')
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7426
                        itemValue: 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7427
                            [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7428
                                |dir|
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7429
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7430
                                package notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7431
                                    dir := Smalltalk packageDirectoryForPackageId:package.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7432
                                    dir notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7433
                                        FileBrowser default openOn:dir.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7434
                                    ] ifFalse:[
17209
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7435
                                        Dialog warn:(resources string:'Project directory of "%1" is not present/readable' with:package)
17083
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7436
                                    ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7437
                                ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7438
                            ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7439
                        enabled:package notNil).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7440
            m addSeparator. 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7441
            m addItem:(MenuItem 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7442
                        label: (resources string:'Browse Package Definition')
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7443
                        itemValue: 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7444
                            [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7445
                                defClass notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7446
                                    SystemBrowser default openInClass:defClass class
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7447
                                ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7448
                            ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7449
                        enabled:defClass notNil).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7450
            m addItem:(MenuItem 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7451
                        label: (resources string:'Browse Package')
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7452
                        itemValue: 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7453
                            [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7454
                                Tools::NewSystemBrowser openOnPackage:package
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7455
                            ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7456
                        enabled:defClass notNil).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7457
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7458
            item type == #monticelloPackage ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7459
                m addItem:(MenuItem 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7460
                            label: (resources string:'Browse Monticello Package')
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7461
                            itemValue: [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7462
                                |repos|
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7463
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7464
                                repos := item parent info.                    
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7465
                                MCRepositoryBrowser openOnRepository:repos forPackage:item label.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7466
                            ]).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7467
            ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7468
        ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7469
    ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7470
    ^ m
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7471
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7472
    "Modified: / 18-11-2016 / 11:11:07 / cg"
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7473
! !
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7474
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7475
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'opening'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7476
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7477
openLoadPackageDialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7478
    "open a dialog showing wellknown packages (listed in the packages directory)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7479
     and offer to load the selected one(s).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7480
     TODO: make this a little app instead of an ad-hoc dialog, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7481
     add remote packages (central goody repository?)"    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7482
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7483
    self openLoadPackageDialogModal:false.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7484
!
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7485
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7486
openLoadPackageDialogModal:modal
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7487
    "open a dialog showing wellknown packages (listed in the packages directory)
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7488
     and offer to load the selected one(s).
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7489
     TODO: make this a little app instead of an ad-hoc dialog, 
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7490
     add remote packages (central goody repository?)"    
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7491
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7492
    |list dialog filter v   
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7493
     browse selectionChangeAction 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7494
     selectedPackageLabel infoView monticelloLabel|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7495
18058
019abbda4196 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 18056
diff changeset
  7496
    alreadyLoadedString := (resources string:' (loaded)') allItalic.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7497
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7498
    self initializeIcons.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7499
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7500
    selectedPackageHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7501
    infoTextHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7502
    filterHolder := ValueHolder with:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7503
    itemsByPath := Dictionary new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7504
    packageIdByItem := IdentityDictionary new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7505
    pathByItem := IdentityDictionary new.  
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7506
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7507
    list := HierarchicalList new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7508
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7509
    masterRoot := MyHierarchicalItem new.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7510
    masterRoot icon:(ToolbarIconLibrary stxHomeIcon).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7511
    masterRoot label:(resources string:'local ').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7512
    masterRoot type:#localRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7513
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7514
    root := MyHierarchicalItem new.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7515
    root icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7516
    root label:((resources string:'[Compiled Packages]') asText allItalic withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7517
    root type:#compiledPackagesRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7518
    masterRoot add:root.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7519
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7520
    monticelloRoot := MyHierarchicalItem new.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7521
    monticelloLabel := ((resources string:'[Monticello Packages]') asText allItalic withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7522
    monticelloRoot type:#monticelloRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7523
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7524
    (MCRepositoryGroup isNil or:[MCRepositoryGroup isLoaded not]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7525
        monticelloRoot icon:greyFolderIcon.
16506
f8e9cf3bc8a7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16446
diff changeset
  7526
        monticelloRoot label:monticelloLabel, (' (Monticello Support not Loaded)' withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7527
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7528
        monticelloRoot icon:folderIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7529
        monticelloRoot label:monticelloLabel.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7530
        self getMonticelloRepositories.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7531
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7532
    masterRoot add:monticelloRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7533
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7534
    self readPackageTree.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7535
    self readOtherPackageTreesInBackground.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7536
    masterRoot expand.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7537
    root expand.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7538
    list root:masterRoot.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7539
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7540
    PreviousPackageDialogItems notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7541
        PreviousPackageDialogItems keysAndValuesDo:[:path :prevItem |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7542
            |newItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7543
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7544
            newItem := itemsByPath at:path ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7545
            newItem notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7546
                prevItem isExpanded ifTrue:[ newItem expand ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7547
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7548
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7549
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7550
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7551
    selectionChangeAction :=
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7552
        [:selectionIndices | self selectionChangeAction:selectionIndices].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7553
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7554
    dialog := Dialog new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7555
    dialog label:(resources string:'Load Package').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7556
    dialog addButton:(loadButton := Button label:(resources string:'Load') action:[self loadAction:false]) beReturnButton. 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7557
    dialog addButton:(loadAndBrowseButton := Button label:(resources string:'Load & Browse') action:[self loadAction:true]).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7558
    dialog addAbortButtonLabelled:(resources string:'Close').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7559
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7560
    loadButton enabled:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7561
    loadAndBrowseButton enabled:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7562
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7563
    filter := EditField new.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7564
    filter emptyFieldReplacementText:(resources string:'Filter Pattern').
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7565
    filter immediateAccept:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7566
    filter model: filterHolder.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7567
    filterHolder onChangeEvaluate:[self filterChangedAction].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7568
    dialog
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7569
        addLabelledField:filter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7570
        label:(resources string:'Quick Find:') 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7571
        adjust:#left tabable:true from:0.0 to:1.0 separateAtX:150.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7572
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7573
    "/ dialog addComponent:filter.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7574
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7575
    v := HVScrollableView for:HierarchicalListView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7576
    hierarchicalListView := v scrolledView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7577
    hierarchicalListView multipleSelectOk:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7578
    hierarchicalListView preferredExtent:(400 @ 300).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7579
    hierarchicalListView doubleClickAction:[:index | self loadAction:false. dialog okPressed].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7580
    hierarchicalListView list:list.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7581
    hierarchicalListView action:selectionChangeAction.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7582
    hierarchicalListView menuHolder:[ self itemMenu].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7583
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7584
    dialog addComponent:v.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7585
    selectedPackageLabel := dialog addTextLabelOn:(selectedPackageHolder) adjust:#left.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7586
    infoView := dialog addTextBoxOn:infoTextHolder class:TextView withNumberOfLines:5 hScrollable:true vScrollable:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7587
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7588
    dialog stickAtBottomWithVariableHeight:v.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7589
    dialog stickAtBottomWithFixHeight:selectedPackageLabel.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7590
    dialog stickAtBottomWithFixHeight:infoView.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7591
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7592
    PreviousPackageDialogExtent notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7593
        dialog extent:PreviousPackageDialogExtent
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7594
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7595
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7596
    browse := false.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7597
    dialog application:self.
16209
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7598
    modal ifTrue:[
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7599
        dialog openModalAtPointer.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7600
    ] ifFalse:[
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7601
        dialog openModelessAtPointer.
08c17ac3132b #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16114
diff changeset
  7602
    ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7603
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7604
    "/ remember the expand/collapse status
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7605
    PreviousPackageDialogItems := itemsByPath.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7606
    PreviousPackageDialogExtent := dialog extent.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7607
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7608
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7609
!AbstractLauncherApplication::PackageLoadDialog methodsFor:'private'!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7610
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7611
addItemWithPackagePath:path target:target asApplication:isApplication toRoot:aRoot
18063
8f8135736929 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18058
diff changeset
  7612
    "add a package item to the tree"
8f8135736929 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 18058
diff changeset
  7613
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7614
    |item isAlreadyLoaded defClass packageID|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7615
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7616
    "/ see if already loaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7617
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7618
    packageID := (path size > 1) 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7619
                    ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7620
                    ifFalse:[ path first ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7621
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7622
    item := self getItemByPath:path packageID:packageID under:aRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7623
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7624
    isAlreadyLoaded := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7625
    Error handle:[:ex |
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7626
        item label:(item label , (' ERROR - please rebuild!!' withColor:Color red)).
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7627
    ] do:[    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7628
        isAlreadyLoaded := 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7629
            (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7630
            and:[ defClass isLoaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7631
            and:[ defClass isFullyLoaded ]].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7632
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7633
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7634
    target notNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7635
        ((target startsWith:'lib ') or:[(target startsWith:'app ')]) ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7636
            pathByItem at:item put:(target copyFrom:(target indexOfSeparator + 1)) withoutSeparators.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7637
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7638
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7639
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7640
    "/ do not overwrite an app by a lib with the same name (happens in expecco/application)
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7641
    (isApplication or:[ item icon isNil or:[item icon == folderIcon or:[item icon == greyFolderIcon]]]) ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7642
        isAlreadyLoaded ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7643
            item icon:(isApplication ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7644
            item label:(item label , alreadyLoadedString)
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7645
        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7646
            item icon:(isApplication ifTrue:[applicationIcon] ifFalse:[packageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7647
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7648
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7649
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7650
    "/ if it is not already loaded, make all parents non-grey
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7651
    isAlreadyLoaded ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7652
        path size-1 to:1 by:-1 do:[:n |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7653
            |parentPath parentItem|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7654
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7655
            parentPath := path copyTo:n.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7656
            parentItem := self getItemByPath:parentPath packageID:packageID under:aRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7657
            parentItem icon == greyFolderIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7658
                parentItem icon:folderIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7659
"/                        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7660
"/                            parentItem icon == greyApplicationIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7661
"/                                parentItem icon:applicationIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7662
"/                            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7663
            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7664
        ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7665
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7666
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7667
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7668
filterChangedAction
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7669
    |newMatchingItems filterPattern isMatch firstMatchingItem|
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7670
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7671
    filterPattern := filterHolder value.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7672
    filterPattern isEmptyOrNil ifTrue:[
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7673
        itemsMatchingFilter notEmptyOrNil ifTrue:[ 
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7674
            "/ nothing
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7675
            root recursiveDo:[:item |
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7676
                item label:(item label copy asText allNonBold withoutAnyColorEmphasis).
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7677
            ].
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7678
        ].
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7679
        itemsMatchingFilter := #().
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7680
        ^ self.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7681
    ].
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7682
    
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7683
    filterPattern := filterPattern asLowercase.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7684
    isMatch := filterPattern includesMatchCharacters.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7685
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7686
    newMatchingItems := OrderedCollection new.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7687
    masterRoot recursiveDo:[:item |
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7688
        |itemLabel itemPackage|
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7689
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7690
        itemLabel := item label.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7691
        itemPackage := packageIdByItem at:item ifAbsent:''.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7692
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7693
        ((isMatch and:[itemLabel matches:filterPattern caseSensitive:false])
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7694
            or:[ (isMatch not and:[ itemLabel asLowercase includesString:filterPattern ])
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7695
            or:[ (isMatch and:[itemPackage matches:filterPattern caseSensitive:false])
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7696
            or:[ isMatch not and:[ itemPackage asLowercase includesString:filterPattern ]]]])
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7697
        ifTrue:[ 
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7698
            newMatchingItems add:item.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7699
        ]
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7700
    ].
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7701
    (newMatchingItems sameContentsAs:itemsMatchingFilter) ifTrue:[
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7702
        ^ self
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7703
    ].    
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7704
    
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7705
    newMatchingItems isEmpty ifTrue:[
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7706
        "/ nothing found
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7707
        root recursiveDo:[:item |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7708
            item label:(item label copy asText allNonBold withoutAnyColorEmphasis).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7709
        ].
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7710
        Screen current beep.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7711
    ] ifFalse:[
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7712
        "/ collapse all and fully expand all matching items
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7713
        masterRoot recursiveDo:[:item |
17713
3d6592478eb0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17655
diff changeset
  7714
            (newMatchingItems includes:item) ifFalse:[
3d6592478eb0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17655
diff changeset
  7715
                item collapse.
3d6592478eb0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17655
diff changeset
  7716
                item label:(item label copy asText allNonBold withColor:Color grey).
3d6592478eb0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17655
diff changeset
  7717
            ]
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7718
        ].
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7719
        firstMatchingItem := nil.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7720
        newMatchingItems do:[:item |
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7721
            item label:(item label copy asText allBold withoutAnyColorEmphasis).
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7722
            item makeVisible.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7723
            firstMatchingItem := firstMatchingItem ? item.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7724
        ].
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7725
        hierarchicalListView makeLineVisible:firstMatchingItem listIndex.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7726
    ].
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7727
    itemsMatchingFilter := newMatchingItems.
17713
3d6592478eb0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17655
diff changeset
  7728
3d6592478eb0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17655
diff changeset
  7729
    "Modified (format): / 16-10-2017 / 13:58:08 / cg"
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7730
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7731
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7732
getItemByPath:path packageID:packageID under:aRoot
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7733
    "/ ensures an item for a path and returns it.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7734
    "/ if not already present, the item is created as a folder
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7735
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7736
    |item parent subPackageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7737
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7738
    item := path isEmpty   
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7739
            ifTrue:[aRoot]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7740
            ifFalse:[ itemsByPath at:( {aRoot label},path) ifAbsent:nil ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7741
    item isNil ifTrue:[
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7742
        parent := self getItemByPath:(path copyButLast) packageID:packageID under:aRoot.
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7743
        item := MyHierarchicalItem new
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7744
                children:#();
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7745
                icon:greyFolderIcon; 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7746
                label:path last.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7747
        parent add:item.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7748
        itemsByPath at:( {aRoot label},path) put:item.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7749
        subPackageID := path size > 1 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7750
                        ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7751
                        ifFalse:[ path first ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7752
        packageIdByItem at:item put:subPackageID.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7753
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7754
    ^ item
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7755
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7756
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7757
getMonticelloRepositories
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7758
    (MCRepositoryGroup default repositories 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7759
        asSortedCollection:[:a :b |a displayString < b displayString])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7760
            do:[:each |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7761
                |reposItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7762
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7763
                reposItem := MyHierarchicalItem new.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7764
                reposItem icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7765
                reposItem label:each displayString , ((resources string:' [MC Repository]') asText allItalic withColor:Color grey).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7766
                reposItem type:#monticelloRepository.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7767
                reposItem info:each.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7768
                monticelloRoot add:reposItem.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7769
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7770
                each allPackageNames asSortedCollection do:[:eachPackage |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7771
                    |packageItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7772
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7773
                    packageItem := MyHierarchicalItem new.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7774
                    packageItem icon:packageIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7775
                    packageItem label:eachPackage.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7776
                    packageItem type:#monticelloPackage.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7777
                    reposItem add:packageItem.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7778
                ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7779
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7780
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7781
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7782
loadAction:doBrowse 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7783
    "the button's load action"
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7784
    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7785
    (hierarchicalListView selectionValue) do:[:eachSelectedItem |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7786
        |package repos|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7787
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7788
        eachSelectedItem type == #monticelloRepository ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7789
            repos := eachSelectedItem info.                    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7790
            MCRepositoryBrowser openOnRepository:repos forPackage:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7791
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7792
            eachSelectedItem type == #monticelloPackage ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7793
                repos := eachSelectedItem parent info.                    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7794
                MCRepositoryBrowser openOnRepository:repos forPackage:eachSelectedItem label.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7795
            ] ifFalse:[
16894
a6e7b6cd2db0 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16888
diff changeset
  7796
                package := packageIdByItem at:eachSelectedItem ifAbsent:[nil].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7797
                package notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7798
                    self loadPackageAndUpdate:package browse:doBrowse subPackages:false item:eachSelectedItem
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7799
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7800
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7801
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7802
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7803
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7804
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7805
loadPackageAndUpdate:package browse:doBrowse subPackages:subPackages item:someItem
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7806
    |defClass updateAction|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7807
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7808
    self withWaitCursorDo:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7809
        updateAction := 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7810
            [:whatChanged :parameter | 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7811
                self updateAction:whatChanged parameter:parameter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7812
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7813
            
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7814
        Smalltalk onChangeSend:#value:value: to:updateAction.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7815
        [
16687
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7816
            |packageTried|
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7817
            packageTried := package.
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7818
            ((package includes:$:) not and:[(package includes:$/) not]) ifTrue:[
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7819
                packageTried := package,':'
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7820
            ].        
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7821
            [
16687
fc818b969fed #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 16506
diff changeset
  7822
                Smalltalk loadPackage:packageTried
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7823
            ] on:PackageLoadError do:[:ex |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7824
                |path|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7825
16111
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7826
                path := pathByItem at:someItem ifAbsent:nil.
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7827
                path isNil ifTrue:[
17213
e0212d9e3913 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17209
diff changeset
  7828
                    Dialog information:('package load failed: %1' bindWith:ex description).
16111
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7829
                ] ifFalse:[    
18056
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7830
                    (packageDirPath asFilename / path) exists ifTrue:[
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7831
                        "/ try to load the file as is (i.e. not via package-id
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7832
                        Dialog information:(resources stringWithCRs:'package load failed: %1\\Loading file directly...' with:ex description).
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7833
                        Smalltalk fileIn:(packageDirPath asFilename / path).
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7834
                    ] ifFalse:[
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7835
                        (Dialog confirm:(resources stringWithCRs:'package load failed: %1\\Autoload individual files?' with:ex description))
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7836
                        ifTrue:[
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7837
                            [
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7838
                                Smalltalk loadPackage:package asAutoloaded:true
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7839
                            ] on:PackageLoadError do:[:ex |
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7840
                                Dialog information:(resources stringWithCRs:'package load failed: %1' with:ex description).
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7841
                            ]
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7842
                        ]
e2c380fb1bf4 #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 18019
diff changeset
  7843
                    ].
16111
335aa560bb05 #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 16107
diff changeset
  7844
                ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7845
            ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7846
        ] ensure:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7847
            Smalltalk retractInterestsFor:updateAction.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7848
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7849
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7850
    ((defClass := package asPackageId projectDefinitionClass) notNil
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7851
        and:[ defClass isLoaded
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7852
        and:[ defClass isFullyLoaded ]])
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7853
    ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7854
        defClass isNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7855
            Dialog warn:(resources string:'Load failed: definition class for packageID (%1) not present after package load.' with:package)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7856
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7857
            defClass verbose:true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7858
            defClass isLoaded.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7859
            defClass isFullyLoaded.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7860
            defClass verbose:false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7861
            Dialog warn:(resources string:'Load failed: definition class /%1) not fully loaded after package load.' with:defClass name)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7862
        ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7863
    ] ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7864
        doBrowse ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7865
            Tools::NewSystemBrowser openOnPackage:package
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7866
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7867
        someItem icon == packageIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7868
            someItem icon:greyPackageIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7869
            someItem label:(someItem label , alreadyLoadedString).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7870
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7871
            someItem icon == applicationIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7872
                someItem icon:greyApplicationIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7873
                someItem label:(someItem label , alreadyLoadedString).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7874
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7875
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7876
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7877
    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7878
    subPackages ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7879
        someItem children do:[:eachChild |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7880
            |subPackageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7881
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7882
            subPackageID := packageIdByItem at:eachChild.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7883
            self loadPackageAndUpdate:subPackageID browse:false subPackages:true item:eachChild.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7884
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7885
    ].
17608
bcb21d3a4f0d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17585
diff changeset
  7886
bcb21d3a4f0d #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17585
diff changeset
  7887
    "Modified: / 02-08-2017 / 13:00:14 / cg"
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7888
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  7889
17083
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7890
loadPackageDefinition:package browse:doBrowse subPackages:subPackages item:someItem
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7891
    |defClass updateAction|
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7892
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7893
    self withWaitCursorDo:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7894
        updateAction := 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7895
            [:whatChanged :parameter | 
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7896
                self updateAction:whatChanged parameter:parameter
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7897
            ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7898
            
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7899
        Smalltalk onChangeSend:#value:value: to:updateAction.
17209
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7900
        
17083
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7901
        [
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7902
            |packageTried dir className fileName|
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7903
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7904
            packageTried := package.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7905
            ((package includes:$:) not and:[(package includes:$/) not]) ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7906
                packageTried := package,':'
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7907
            ].        
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7908
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7909
            dir := Smalltalk packageDirectoryForPackageId:package.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7910
            dir notNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7911
                "/ is there a project definition class's source?
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7912
                className := ProjectDefinition projectDefinitionClassNameForDefinitionOf:package.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7913
                fileName := dir / ((Smalltalk fileNameForClass:className),'.st').
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7914
                fileName exists ifTrue:[
17209
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7915
                    ParseError handle:[:ex |
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7916
                        Dialog warn:(resources string:'An error happened while loading the project definition:\  %1\\Maybe the project depends on some other package.\Please check this manually.' with:ex description)
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7917
                    ] do:[    
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7918
                        Smalltalk fileIn:fileName.
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7919
                    ].
17083
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7920
                ] ifFalse:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7921
                    Dialog warn:(resources string:'Project definition class file not present: "%1"' with:fileName)
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7922
                ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7923
            ] ifFalse:[
17209
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7924
                Dialog warn:(resources string:'Project directory for "%1" is not present/readable' with:package).
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7925
                ^ self.
17083
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7926
            ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7927
        ] ensure:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7928
            Smalltalk retractInterestsFor:updateAction.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7929
        ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7930
    ].
17209
9fa5c28001d5 #BUGFIX by cg
Claus Gittinger <cg@exept.de>
parents: 17159
diff changeset
  7931
    ((defClass := package asPackageId projectDefinitionClass) notNil and:[ defClass isLoaded ])
17083
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7932
    ifFalse:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7933
        defClass isNil ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7934
            Dialog warn:(resources string:'Load failed: definition class for packageID (%1) not present after package load.' with:package)
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7935
        ]
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7936
    ] ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7937
        doBrowse ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7938
            Tools::NewSystemBrowser openOnPackage:package
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7939
        ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7940
"/        someItem icon == packageIcon ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7941
"/            someItem icon:greyPackageIcon.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7942
"/            someItem label:(someItem label , alreadyLoadedString).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7943
"/        ] ifFalse:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7944
"/            someItem icon == applicationIcon ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7945
"/                someItem icon:greyApplicationIcon.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7946
"/                someItem label:(someItem label , alreadyLoadedString).
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7947
"/            ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7948
"/        ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7949
    ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7950
    
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7951
    subPackages ifTrue:[
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7952
        someItem children do:[:eachChild |
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7953
            |subPackageID|
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7954
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7955
            subPackageID := packageIdByItem at:eachChild.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7956
            self loadPackageAndUpdate:subPackageID browse:false subPackages:true item:eachChild.
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7957
        ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7958
    ].
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7959
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7960
    "Created: / 18-11-2016 / 11:13:03 / cg"
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7961
!
1cb0fa7c49c0 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17074
diff changeset
  7962
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7963
readOtherPackageTrees
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7964
    |packagePath|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7965
    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7966
    packagePath := Smalltalk packagePath.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7967
    packagePath do:[:eachDirName |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7968
        |folderRoot eachDir|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7969
        
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7970
        eachDir := eachDirName asFilename.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7971
        selectedPackageHolder value isNil ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  7972
            infoTextHolder value:(resources string:'searching %1...' with:eachDirName).
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7973
        ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7974
        eachDir
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7975
            recursiveDirectoryContentsWithPrefix:'' 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7976
            filesDo:nil 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7977
            directoriesDo:[:subDir |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7978
                |dfnBasename expectedDfnFilename|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7979
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7980
                (eachDir /  subDir / 'abbrev.stc') exists ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7981
                    "/ see if there is a project definition file in this dir
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7982
                    dfnBasename := subDir copyReplaceAll:(Filename separator) with:$_.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7983
                    expectedDfnFilename := (eachDir /  subDir / dfnBasename) withSuffix:'st'.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7984
                    expectedDfnFilename exists ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7985
                        |path|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7986
                        
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7987
                        path := subDir asFilename components.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7988
                        (itemsByPath at:( {root label},path) ifAbsent:nil) isNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7989
                            folderRoot isNil ifTrue:[
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  7990
                                folderRoot := MyHierarchicalItem new.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7991
                                folderRoot icon:folderIcon.
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  7992
                                folderRoot label:((resources string:'[%1]' with:eachDirName) asText allItalic withColor:Color grey).
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7993
                                folderRoot type:#compiledPackagesRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7994
                            ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7995
                            self 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7996
                                addItemWithPackagePath:path
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7997
                                target:nil
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7998
                                asApplication:false
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  7999
                                toRoot:folderRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8000
                        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8001
                    ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8002
                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8003
            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8004
        folderRoot notNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8005
            masterRoot add:folderRoot.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8006
        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8007
    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8008
    selectedPackageHolder value isNil ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  8009
        infoTextHolder value:(resources string:'Done searching other package folders.').
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8010
    ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8011
    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8012
"/    packageDirPath isNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8013
"/        root label:root label,((resources string:' (no "packages" folder found)') colorizeAllWith:Color red).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8014
"/    ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8015
"/        packageDirPath asFilename directoryContentsAsFilenames sort do:[:fn |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8016
"/            |item base nm path parentPath parent isLibrary isApplication isAlreadyLoaded 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8017
"/             defClass target packageID|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8018
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8019
"/            ((fn suffix = 'mcz') 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8020
"/            or:[ fn isDirectory   
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8021
"/            or:[ (fn baseName startsWith:'.')   
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8022
"/            or:[ (fn baseName = 'README') ]]]) ifFalse:[    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8023
"/                base := fn withoutSuffix baseName.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8024
"/                (base startsWith:'lib') ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8025
"/                    nm := (base copyFrom:4).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8026
"/                    fn suffix notEmptyOrNil ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8027
"/                        isLibrary := true.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8028
"/                        isApplication := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8029
"/                    ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8030
"/                        isLibrary := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8031
"/                        isApplication := true.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8032
"/                    ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8033
"/                ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8034
"/                    nm := base.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8035
"/                    isLibrary := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8036
"/                    isApplication := true.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8037
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8038
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8039
"/                path := nm asCollectionOfSubstringsSeparatedBy:$_.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8040
"/                "/ see if already loaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8041
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8042
"/                packageID := (path size > 1) 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8043
"/                                ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8044
"/                                ifFalse:[ path first ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8045
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8046
"/                item := self getItemByPath:path packageID:packageID.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8047
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8048
"/                isAlreadyLoaded := false.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8049
"/                Error handle:[:ex |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8050
"/                    item label:(item label , (' ERROR - please rebuild!!' colorizeAllWith:Color red)).
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8051
"/                ] do:[    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8052
"/                    isAlreadyLoaded := 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8053
"/                        (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8054
"/                        and:[ defClass isLoaded
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8055
"/                        and:[ defClass isFullyLoaded ]].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8056
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8057
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8058
"/                target := fn contents first.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8059
"/                ((target startsWith:'lib ') or:[(target startsWith:'app ')]) ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8060
"/                    pathByItem at:item put:(target copyFrom:(target indexOfSeparator + 1)) withoutSeparators.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8061
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8062
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8063
"/                "/ do not overwrite an app by a lib with the same name (happens in expecco/application)
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8064
"/                (isApplication or:[ item icon isNil or:[item icon == folderIcon or:[item icon == greyFolderIcon]]]) ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8065
"/                    isAlreadyLoaded ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8066
"/                        item icon:(isApplication ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8067
"/                        item label:(item label , alreadyLoadedString)
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8068
"/                    ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8069
"/                        item icon:(isApplication ifTrue:[applicationIcon] ifFalse:[packageIcon]). 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8070
"/                    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8071
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8072
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8073
"/                "/ if it is not already loaded, make all parents non-grey
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8074
"/                isAlreadyLoaded ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8075
"/                    path size-1 to:1 by:-1 do:[:n |
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8076
"/                        |parentPath parentItem|
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8077
"/
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8078
"/                        parentPath := path copyTo:n.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8079
"/                        parentItem := self getItemByPath:parentPath packageID:packageID.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8080
"/                        parentItem icon == greyFolderIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8081
"/                            parentItem icon:folderIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8082
"/"/                        ] ifFalse:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8083
"/"/                            parentItem icon == greyApplicationIcon ifTrue:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8084
"/"/                                parentItem icon:applicationIcon.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8085
"/"/                            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8086
"/                        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8087
"/                    ]
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8088
"/                ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8089
"/            ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8090
"/        ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8091
"/    ].
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8092
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8093
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8094
readOtherPackageTreesInBackground
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8095
    backgroundPackageFindProcess := 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8096
        [
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8097
            [
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8098
                self readOtherPackageTrees.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8099
            ] ensure:[
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8100
                backgroundPackageFindProcess := nil.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8101
            ].    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8102
        ] forkAt:(Processor userBackgroundPriority).    
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8103
!
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8104
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8105
readPackageTree
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8106
    packageDirPath := Smalltalk getSystemFileName:'packages'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8107
    packageDirPath isNil ifTrue:[
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  8108
        root label:root label,((resources string:' (no "packages" folder found)') withColor:Color red).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8109
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8110
        packageDirPath asFilename directoryContentsAsFilenames sort do:[:fn |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8111
            |item base nm path parentPath parent isLibrary isApplication isAlreadyLoaded 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8112
             defClass target packageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8113
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8114
            ((fn suffix = 'mcz') 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8115
            or:[ fn isDirectory   
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8116
            or:[ (fn baseName startsWith:'.')   
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8117
            or:[ (fn baseName = 'README') ]]]) ifFalse:[    
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8118
                base := fn withoutSuffix baseName.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8119
                (base startsWith:'lib') ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8120
                    nm := (base copyFrom:4).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8121
                    fn suffix notEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8122
                        isLibrary := true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8123
                        isApplication := false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8124
                    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8125
                        isLibrary := false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8126
                        isApplication := true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8127
                    ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8128
                ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8129
                    nm := base.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8130
                    isLibrary := false.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8131
                    isApplication := true.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8132
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8133
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8134
                path := nm asCollectionOfSubstringsSeparatedBy:$_.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8135
                target := fn contents first.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8136
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8137
                self 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8138
                    addItemWithPackagePath:path 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8139
                    target:target 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8140
                    asApplication:isApplication 
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8141
                    toRoot:root.
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8142
false ifTrue:[
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8143
                "/ see if already loaded
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8144
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8145
                packageID := (path size > 1) 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8146
                                ifTrue:[ path first , ':' , ((path copyFrom:2) asStringWith:$/) ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8147
                                ifFalse:[ path first ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8148
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8149
                item := self getItemByPath:path packageID:packageID.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8150
16225
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8151
                isAlreadyLoaded := false.
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8152
                Error handle:[:ex |
16506
f8e9cf3bc8a7 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16446
diff changeset
  8153
                    item label:(item label , (' ERROR - please rebuild!!' withColor:Color red)).
16225
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8154
                ] do:[    
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8155
                    isAlreadyLoaded := 
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8156
                        (defClass := ProjectDefinition definitionClassForPackage:packageID) notNil
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8157
                        and:[ defClass isLoaded
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8158
                        and:[ defClass isFullyLoaded ]].
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8159
                ].
ce1e52b48698 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 16209
diff changeset
  8160
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8161
                ((target startsWith:'lib ') or:[(target startsWith:'app ')]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8162
                    pathByItem at:item put:(target copyFrom:(target indexOfSeparator + 1)) withoutSeparators.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8163
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8164
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8165
                "/ do not overwrite an app by a lib with the same name (happens in expecco/application)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8166
                (isApplication or:[ item icon isNil or:[item icon == folderIcon or:[item icon == greyFolderIcon]]]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8167
                    isAlreadyLoaded ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8168
                        item icon:(isApplication ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8169
                        item label:(item label , alreadyLoadedString)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8170
                    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8171
                        item icon:(isApplication ifTrue:[applicationIcon] ifFalse:[packageIcon]). 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8172
                    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8173
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8174
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8175
                "/ if it is not already loaded, make all parents non-grey
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8176
                isAlreadyLoaded ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8177
                    path size-1 to:1 by:-1 do:[:n |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8178
                        |parentPath parentItem|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8179
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8180
                        parentPath := path copyTo:n.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8181
                        parentItem := self getItemByPath:parentPath packageID:packageID.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8182
                        parentItem icon == greyFolderIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8183
                            parentItem icon:folderIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8184
"/                        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8185
"/                            parentItem icon == greyApplicationIcon ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8186
"/                                parentItem icon:applicationIcon.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8187
"/                            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8188
                        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8189
                    ]
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8190
                ].
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8191
].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8192
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8193
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8194
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8195
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8196
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8197
selectionChangeAction:selectionIndices
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8198
    |selectedItem p itemType info|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8199
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8200
    loadButton enabled:(selectionIndices notEmpty).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8201
    loadAndBrowseButton enabled:(selectionIndices notEmpty).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8202
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8203
    selectionIndices size == 1 ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8204
        selectedItem := hierarchicalListView selectionValue first.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8205
        itemType := selectedItem type.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8206
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8207
        itemType == #monticelloRepository ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8208
            info := 'Monticello repository. Double click to browse its contents.'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8209
        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8210
            itemType == #monticelloPackage ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8211
                info := 'Monticello package. Double click to browse its contents.'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8212
            ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8213
                p := packageIdByItem at:selectedItem ifAbsent:nil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8214
                p notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8215
                    selectedPackageHolder value:(resources string:'Selected Package: "%1"' with:p allBold).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8216
                    self showPackageInfoAction:p.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8217
                ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8218
                    selectedItem == masterRoot ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8219
                        info := 'Packages found on the local machine.'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8220
                    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8221
                        selectedItem == monticelloRoot ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  8222
                            info := 'Monticello packages\found on the local machine.'
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8223
                        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8224
                            selectedItem == root ifTrue:[
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  8225
                                info := 'Class library packages\found in the "packages" folder.'
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  8226
                            ] ifFalse:[
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  8227
                                info := 'Other packages\found along the package-path.'
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8228
                            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8229
                        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8230
                    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8231
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8232
            ].
16379
1f61b71af8a2 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16341
diff changeset
  8233
            info notNil ifTrue:[ infoTextHolder value:(resources stringWithCRs:info)].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8234
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8235
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8236
        selectedPackageHolder value:(resources string:'Selected %1 packages.' with:selectionIndices size).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8237
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8238
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8239
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8240
showPackageInfoAction:package
17154
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8241
    |projectDef comment info projectDir className projectDefinitionFile readMeFile|
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8242
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8243
    info := resources string:'Sorry, could not find any package documentation'.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8244
    projectDef := package asPackageId projectDefinitionClass.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8245
    projectDef notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8246
        comment := projectDef commentOrDocumentationString.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8247
        comment isNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8248
            info := info, 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8249
                    (resources stringWithCRs:'\\The project''s definition class (%1)\has no documentation method.' with:projectDef class name).
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8250
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8251
    ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8252
        "/ try to find the package's source
17154
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8253
        projectDir := Smalltalk packageDirectoryForPackageId:package.
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8254
        projectDir notNil ifTrue:[
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8255
            |docChange|
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8256
            
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8257
            "/ is there a project definition class's source?
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8258
            className := ProjectDefinition projectDefinitionClassNameForDefinitionOf:package.
17154
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8259
            projectDefinitionFile := projectDir / ((Smalltalk fileNameForClass:className),'.st').
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8260
            projectDefinitionFile exists ifTrue:[
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8261
                projectDefinitionFile readingFileDo:[:s |
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8262
                    ChangeSet 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8263
                        fromStream:s 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8264
                        while:[:change |
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8265
                            (change isMethodCodeChange
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8266
                            and:[ change selector == #documentation
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8267
                            and:[ change isForMeta ]]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8268
                                docChange := change.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8269
                                false "/ stop reading
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8270
                            ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8271
                                true
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8272
                            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8273
                        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8274
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8275
                docChange notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8276
                    comment := Parser methodCommentFromSource:docChange source.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8277
                ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8278
                    info := info ,
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8279
                            (resources stringWithCRs:'\\The project''s definition class (%1) is present,\but has no documentation method.\\In file: %2'
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8280
                                    with:className
17154
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8281
                                    with:projectDefinitionFile pathName).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8282
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8283
            ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8284
                info := info , 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8285
                        (resources stringWithCRs:'\\No definition class was found in the project.\In folder: %1'
17154
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8286
                                with:projectDir pathName).
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8287
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8288
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8289
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8290
    comment notEmptyOrNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8291
        comment := comment asStringCollection.
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  8292
        [ comment notEmptyOrNil and:[comment first isEmpty]] whileTrue:[ comment removeFirst ].
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8293
        (comment conform:[:line | line isEmpty or:[line startsWith:'    ']]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8294
            comment := comment collect:[:line | 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8295
                        (line startsWith:'    ') ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8296
                            line copyFrom:5
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8297
                        ] ifFalse:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8298
                            line
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8299
                        ]].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8300
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8301
        info := comment asString.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8302
    ] ifFalse:[ 
16410
65a228cb613f #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 16379
diff changeset
  8303
        info := info withColor:Color red.
17154
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8304
        (projectDir notNil and:[ (readMeFile := projectDir / 'README') exists]) ifTrue:[
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8305
            info := info , '\\The README file there says:\\' withCRs , (readMeFile contents asString).
228a38eb12b7 #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 17083
diff changeset
  8306
        ].            
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8307
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8308
    infoTextHolder value:info.
17417
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  8309
37220c1b6b48 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 17399
diff changeset
  8310
    "Modified: / 17-02-2017 / 08:26:32 / cg"
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8311
!
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8312
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8313
updateAction:whatChanged parameter:parameter
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8314
    |item isLoaded packageID|
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8315
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8316
    "/ update the corresponding tree item
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8317
    (whatChanged == #postPackageLoad or:[whatChanged == #postLoad]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8318
        parameter notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8319
            packageID := parameter asSymbol.
16330
df19f9d6b50d #FEATURE by cg
Claus Gittinger <cg@exept.de>
parents: 16297
diff changeset
  8320
            item := self getItemByPath:(packageID splitByAny:':/') packageID:packageID under:root.
16076
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8321
            item notNil ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8322
                isLoaded := (ProjectDefinition definitionClassForPackage:packageID) notNil.
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8323
                isLoaded ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8324
                    (item icon == applicationIcon or:[item icon == packageIcon]) ifTrue:[
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8325
                        item icon:((item icon == applicationIcon) ifTrue:[greyApplicationIcon] ifFalse:[greyPackageIcon]). 
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8326
                        item label:(item label , alreadyLoadedString)
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8327
                    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8328
                ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8329
            ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8330
        ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8331
    ].
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8332
! !
4b4ee4d475e4 #REFACTORING
Claus Gittinger <cg@exept.de>
parents: 15954
diff changeset
  8333
16969
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8334
!AbstractLauncherApplication::PackageLoadDialog::MyHierarchicalItem methodsFor:'accessing'!
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8335
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8336
info
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8337
    ^ info
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8338
!
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8339
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8340
info:something
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8341
    info := something.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8342
!
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8343
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8344
type
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8345
    ^ type
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8346
!
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8347
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8348
type:something
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8349
    type := something.
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8350
! !
7e79660cf54e #UI_ENHANCEMENT by cg
Claus Gittinger <cg@exept.de>
parents: 16940
diff changeset
  8351
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8352
!AbstractLauncherApplication class methodsFor:'documentation'!
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8353
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8354
version
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8355
    ^ '$Header$'
10907
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8356
!
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8357
Claus Gittinger <cg@exept.de>
parents: 9961
diff changeset
  8358
version_CVS
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8359
    ^ '$Header$'
9961
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8360
!
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8361
fe503fb51a27 added: #viewBrowse
Claus Gittinger <cg@exept.de>
parents: 9948
diff changeset
  8362
version_SVN
15699
292b370e5431 class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 15506
diff changeset
  8363
    ^ '$Id$'
2001
3d4249692d25 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
  8364
! !
12499
3f6769e6733c class: AbstractLauncherApplication
Claus Gittinger <cg@exept.de>
parents: 12067
diff changeset
  8365